我使用动态创建label,根据combobox里的内容,每当按下button的时候就会把combobox的内容显示在label上,我现在出现了一个问题,第二次按button的时候,label值已经改变,但是显示的没改变,还有最主要的就是第二次按button的时候  label创建了,但是上一次创建的label还在,请问如何将上次的label清除,并将第二次的label依然从初始位置开始。

解决方案 »

  1.   

    创建后,可以给combox或者button的tag属性赋值为你创建的那个label,然后下次点击时,现删除这个tag指向的lable
      

  2.   

    创建后,可以给combox或者button的tag属性赋值为你创建的那个label,然后下次点击时,现删除这个tag指向的lable
      

  3.   

    昨天的问题还没有解决?我感觉你的UI逻辑有点不太合理哈,要不多给点你的上下文,帮你参考一下。Control的动态创建,只在很少的情况下才真正需要的。
      

  4.   

    放一个容器,如PlaceHolder,然后每次新建一个Lable的时候就放到这个容器里。
    点击按钮的时候
    ph.Controls.clear();
    Lable lb=new Lable();
    lb.ID="lblName";
    lb.Text="...";
    ph.Controls.Add(lb);这样行吗?
      

  5.   


    没有必要每次都创建一个新的Label吧,这种你用一个就可以了
      

  6.   

    昨天重启了VS后问题没了,可是今天打开电脑,那个问题有出现了 ,重启VS也不行 
      

  7.   

    感谢楼上的各位,问题解决了,我使用nie332159623(nie332159623)的方法,清除了原先创建的label,现在可以实现了,老毕老兄,我现在对UI这方面了解的不多,能推荐些书籍吗 
      

  8.   

    有一本书,叫作《Beautiful Visualization》,中文大概叫 视界之美 或者 可视之美 什么的吧。书里有UI设计的一些好的经验和做法,你可以找一本当小说看,没有枯燥的代码,有的只是大师们的成功经验。