在Visual Studio Designer中为控件指定双击事件

时间:2011-01-11 00:28:15

标签: c# wpf visual-studio silverlight xaml

双击Visual Studio Designer中的Control时,会自动订阅某些event,并在代码隐藏文件中生成事件处理程序。

双击以下控件订阅相应的事件

  • UserControl - 已加载
  • Button - 点击
  • TextBox - TextChanged
  • Grid - 无事件

如何指定,是否为Visual Studio设置?可以覆盖它,如何指定要链接到双击的事件,例如自定义控件?

由于

2 个答案:

答案 0 :(得分:13)

控件可以指定DefaultEventAttribute。设计人员知道读取此属性并使用它来确定要将哪个事件用作默认值。

[DefaultEvent("DoubleClick")]
public class MyClass {

    public event EventHandler DoubleClick;

}

还有一个DefaultPropertyAttribute,它的用处非常少。它只是确定在设计器中选择控件时在属性网格中选择的默认属性名称。

答案 1 :(得分:0)

如果要在编辑器中执行此操作。
对于VS2017(我怀疑还有)。在设计器中:

  • 在窗体上选择控件
  • 在“属性”窗口中,选择“事件”图标
  • 将显示该控件的可用事件列表
  • 双击所需事件的名称。

这也适用于删除自动生成的代码。删除该事件的事件处理程序的名称。它将从* .designer.cs文件中删除。请注意,您仍然需要删除表单源中的处理程序代码。