日期:2014-05-19  浏览次数:20918 次

winform继承问题
我写了个winform的基类,然后从这个基类继承下来产生了第二级的基类,然后发现最初的基类窗体上还要放个控件,那就在原始基类上放上了该控件,但第二级基类上却不会显示刚在最顶层基类上放上的控件,delphi的都可以立即刷新,难道C#不行?
将工程关闭后再打开,仍然没有刷新后面增加上去的控件,郁闷!

------解决方案--------------------
有两个原因会出现这样的情况。
1、不可见控件(继承Compoent的控件),在C#中不可见控件默认为private.这时需要将控件申明为public
2、控件本身由控件的私有方法或私用子控件实现,修改基类窗体中关于这个控件的生成代码。
其它控件应该不会出现这样的问题。
------解决方案--------------------
将在父窗体中的控件属性 Modified 属星改为 保护或 公共/