我写了个自定义的UserControl,其中包含一个Label和一个ListBox,添加在TabControl的某个TabPage里面。现在出现的怪问题是如果我在另一个TabPage里面更改过了其他控件的属性,运行时,我原来的这个UserControl里面的Label的Visible属性就会变成False,大家知道原因吗?怎么解决

解决方案 »

  1.   

    没遇到过,难道是IDE有了问题,一般都是代码问题的==================================================================
    博客空间:http://blog.csdn.net/lovingkiss
    资源下载:http://download.csdn.net/user/lovingkiss
    优惠接单开发,组件控件定制开发,成品源代码批发
    联系方式:Q64180940 全天在线
    ==================================================================
      

  2.   

    首先试验着不放在tabcontrol里面,看看是否还会有问题;然后屏蔽所有的代码,看看是否还会有问题;只能逐步排除问题所在了+——逐步跟踪也是个办法,不过需要很大耐性先确定是IDE的问题,还是代码的问题罢;
    ==================================================================
    博客空间:http://blog.csdn.net/lovingkiss
    资源下载:http://download.csdn.net/user/lovingkiss
    优惠接单开发,组件控件定制开发,成品源代码批发
    联系方式:Q64180940 全天在线
    ==================================================================
      

  3.   

    恩,如果不是放在TabControl里面,控件是正常的,但是放在TabControl里面时就是由IDE自动的修改这个Visible属性,大家有没有遇到过这样的问题
      

  4.   

    一定是它的父控件TabPage的Visible属性是False
      

  5.   

    假如你设置了一个控件的Visible属性是False,那么它的所有子控件的Visible属性也都变成了False了.
      

  6.   

    这个是TabControl的问题
    我也没找到什么好办法
    也许给UserControl加上适当的Attribute可以解决
    暂时我的解决办法只能是在Load的时候强制写死
      

  7.   

    恩,好了,解决了,是控件默认值得问题,在设计的时候如果在控件内部强制定义一个默认值的话,在TabControl里面好像会先Get一下他的Visible属性,如果不是激活状态的话就会设成False再Set进去,我也不知道TabControl为什么要这样做,还好现在解决了:)谢谢大家,结贴
      

  8.   

    上面写错了,是控件默认值得问题,在设计的时候如果不在控件内部强制定义一个默认值的话,在TabControl里面好像会先Get一下他的Visible属性,如果不是激活状态的话就会设成False再Set进去,我也不知道TabControl为什么要这样做,还好现在解决了:)谢谢大家,结贴