之前写了个自定义控件,但是自定义控件写好过后,控件原本的事件都不可见了,不方便实际操作,只能琢磨一下写个可以调用的事件,最后琢磨结果如下:
- 定义委托
- 定义事件
- 事件绑定
代码如下:
namespace LD.MES.IM.UI.UControl
{
public partial class LookUpTypeUC : UserControl
{
public LookUpTypeUC()
{
InitializeComponent();
//3.事件绑定
lookUpEdit.EditValueChanged += new EventHandler(this.OnMyValueChanged_UC);
}
//1.定义委托
public delegate void MyValueChanged(object sender, EventArgs e);
//2.定义事件
public event MyValueChanged MyValueChanged_UC;
//事件触发的方法
private void OnMyValueChanged_UC(object sender,EventArgs e)
{
if (this.MyValueChanged_UC != null)
{
MyValueChanged_UC(this,e);
}
}
}
}
完成以代码之后,重新编译程序后,在调用自定义控的窗口就可找到自定义的事件:如下
生成事件方法后就能实现值改变事件的触发.
如有更好方法,还请不吝赐教!
参考博客:自定义控件加事件