WinForm實現(xiàn)移除控件某個事件的方法
更新時間:2014年08月06日 11:35:16 投稿:shichen2014
這篇文章主要介紹了WinForm實現(xiàn)移除控件某個事件的方法,對C#初學者有一定的借鑒價值,需要的朋友可以參考下
本文實例講述了WinForm實現(xiàn)移除控件某個事件的方法,供大家參考借鑒一下。具體功能代碼如下:
主要功能部分代碼如下:
/// <summary>
/// 移除控件某個事件
/// </summary>
/// <param name="control">控件</param>
/// <param name="eventName">需要移除的控件名稱eg:EventClick</param>
public static void RemoveControlEvent(this Control control, string eventName)
{
FieldInfo _fl = typeof(Control).GetField(eventName, BindingFlags.Static | BindingFlags.NonPublic);
if (_fl != null)
{
object _obj = _fl.GetValue(control);
PropertyInfo _pi = control.GetType().GetProperty("Events", BindingFlags.NonPublic | BindingFlags.Instance);
EventHandlerList _eventlist = (EventHandlerList)_pi.GetValue(control, null);
if (_obj != null && _eventlist != null)
_eventlist.RemoveHandler(_obj, _eventlist[_obj]);
}
}
使用代碼:
private void WinRemoveControlEventTest_Load(object sender, EventArgs e)
{
button1.RemoveControlEvent("EventClick");
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("button1_Click");
}
您可能感興趣的文章:
相關文章
利用微軟com組件mstscax.dll實現(xiàn)window7遠程桌面功能
利用微軟提供的com組件mstscax.dll實現(xiàn)類似window遠程桌面功能,大家參考使用吧2013-12-12
c#中WinForm使用OpencvSharp4實現(xiàn)簡易抓邊
本文主要介紹了c#中WinForm使用OpencvSharp4實現(xiàn)簡易抓邊,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-05-05
WinForm實現(xiàn)為ComboBox綁定數(shù)據(jù)源并提供下拉提示功能
這篇文章主要介紹了WinForm實現(xiàn)為ComboBox綁定數(shù)據(jù)源并提供下拉提示功能,是非常實用的功能,需要的朋友可以參考下2014-08-08

