如何从源视图(aspx)中的C#按钮添加事件处理程序

从HTML源视图中创建一个按钮,创建代码隐藏(webforms)事件处理程序的最简单方法是什么?

在VB.NET中,很容易切换到页面后面的代码,并使用顶部的对象和事件combobox来选择和创建。

在c#中缺少那些(我真的不喜欢设计视图)。

我同意使用C#然后使用VB这不是那么简单。 我个人的偏好是简单地添加一个带有以下签名的函数(总是有效):

protected void MyButtonName_Clicked(object sender, EventArgs e) { Button btn = (Button) sender; // remember, never null, and cast always works ... etc } 

然后,在HTML / ASP.NET部分的代码视图(也称为声明性代码 )中,您只需添加:

  

我在实践中发现这更快,然后通过几个属性菜单,这些菜单并不总是有效,具体取决于焦点和成功编译等。您可以将EventArgs调整为该事件的任何内容,但所有事件都使用上面的基本签名。 如果您不知道类型,只需在该行上放置断点,并在它断开时将鼠标hover在e对象上以找出实际类型(但大多数时候您会事先知道它)。

经过几次这样做,它成为第二天性。 如果你不喜欢它,请等一下VS2010,它变得更容易了。

注意:VB和C#都不会显示放置在命名容器(即GridView,ListView)中的元素的对象或事件。 在这种情况下,你必须这样做。

  • 确保“属性”窗口已打开。
  • 单击源视图中元素中的任意位置。
  • 单击“属性”窗口中的闪电符号(事件)。
  • 找到要为其创建处理程序的事件。
  • 双击它。