我用事件创建了一个用户控件。每次我向控件添加一个新的控件实例时,我都不想添加以下代码。
Control1.Operate += new MyControl.OperateEventHandler(Control1_Operate)
相反,我想简单地双击该控件,并将IDE上面的代码添加到Designer文件中。默认情况下,Control1_Load事件在Designer文件中指定。有可能改变这个吗?
答案 0 :(得分:7)
对于C#使用:
[DefaultEvent("Click")]
public class MyClass : BaseClass
{
//code
}
MS代码: http://msdn.microsoft.com/en-us/library/system.componentmodel.defaulteventattribute.aspx
答案 1 :(得分:5)
您似乎想为控件设置DefaultEvent
。
在Control类上使用DefaultEventAttribute
。
存在类似的问题:
How can I set the default event to be edited for my custom control in Visual Studio?
希望它有所帮助!
答案 2 :(得分:0)
您正在寻找的行为更像是您对按钮的行为。双击它,您就可以为您生成事件处理程序方法。但在这里,事件处理程序代码是动态生成的。在你的cae中,你想要附加一个预定义的方法与用户控件的事件。尝试为usercontrol定义一些自定义属性或事件,然后设置默认值。对于例如:http://msdn.microsoft.com/en-us/library/yhzc935f.aspx。