可能重复:
在C#中取消订阅匿名方法
我有一些Panels,在创建时,他们被委派为可点击:
int z2 = z;
PicBx[z].Click += delegate { clicked(z2, null); };
Run Code Online (Sandbox Code Playgroud)
如果程序要求它,我希望能够删除它.我试过用:
int z2 = z;
PicBx[z].Click -= delegate { clicked(z2, null); };
Run Code Online (Sandbox Code Playgroud)
但它没有用.有没有办法从中删除可点击的委托?
Ars*_*yan 10
您无法取消订阅匿名委托,您需要保留对委托的引用
var myClickDelegate = (RoutedEventHandler)delegate { clicked(z2, null); };
PicBx[z].Click += myClickDelegate;
...
PicBx[z].Click -= myClickDelegate;
Run Code Online (Sandbox Code Playgroud)
或者创建命名函数
希望这可以帮助
归档时间: |
|
查看次数: |
5445 次 |
最近记录: |