当前位置: 代码迷 >> .NET组件控件 >> 复杂控件中子控件被删除的自动通知有关问题
  详细解决方案

复杂控件中子控件被删除的自动通知有关问题

热度:9373   发布时间:2013-02-25 00:00:00.0
复杂控件中子控件被删除的自动通知问题
复杂控件中子控件被删除的自动通知问题(WinForm)
这样说可能不好理解,举例如下:

如在某Form上添加一个ContextMenuStrip组件,命名为PopMnu1,设置该窗体的ContextMenuStrip属性为PopMnu1,
[color=#FF0000]当删除PopMnu1时,Form的ContextMenuStrip属性自动变为(无)[/color]。

注意上述红色部分。

自己设计的一个用户控件,该控件的某个属性是另外一种控件类型(如Label);
在设计器中可以设置该属性,例如选择该窗体上的Label1,可以看到属性变化正常,已经是Label1了;
但是当Label1被删除时,控件的该属性并未恢复为(无),仍然可以展开查看已经删除的那个Label1。

我想实现类似Form上的ContextMenuStrip被删除时通知Form的功能,时Form自动更新自己的ContextMenuStrip属性为(无)。

谢谢!
------解决方案--------------------------------------------------------
已经找到方法了,就是在子控件属性的Set中,处理子控件的Disposed事件,当子控件被删除时,执行属性=null的方法。
  相关解决方案