怎么在C#一个类中控制它的窗体类阿
例如,我在非窗体类中做了一个操作,来改变窗体类一个控件的属性,例如改变一个label的text属性。
我用事件改变了,每次事件被激发,我都改变label的值,可是程序界面看不到这个效果,除非程序停止,这是为什么?
问题点数:80、回复次数:9Top
1 楼sinsky(十方)回复于 2002-06-10 16:20:28 得分 0
用YourForm.Refersh();Top
2 楼creeksea(小豆)回复于 2002-06-10 16:44:53 得分 0
因为你的窗体没有刷新呀!
当然看不到了!Top
3 楼seaman_X(水手)回复于 2002-06-10 17:16:19 得分 0
不可能每次都要刷新吧,如果我是做一个列表处理,不停显示我列表处理的内容,那么要不停刷新整个窗口,那肯定会很慢,而且会闪烁阿。
有没有好办法,一定要刷新???
怎么处理窗体的控件还是没有人告诉我阿。
例如Form所在窗体是class1,而我新加了一个class2,怎么在class2中写做Form1.Button1.text = "change";这样的操作。Top
4 楼rabbitwy(流浪小兔)回复于 2002-06-10 17:33:22 得分 0
你把BUTTON1定义为PUBLIC就可以控制了啊!Top
5 楼dzq138(钟添)回复于 2002-06-10 17:42:07 得分 0
to seaman_X(水手):
我还专门为你的问题做了一个如你情况的实验.并没有出现你所说的情况.刷新得兴高采列!!
另,你应实事求是,说明你的代码?
1、“我用事件改变了,每次事件被激发,我都改变label的值,可是程序界面看不到这个效果!”
你上面代码真的运行得动?
2、“例如Form所在窗体是class1,而我新加了一个class2,怎么在class2中写做Form1.Button1.text = "change";这样的操作。”
你的Form1是在什么地方实例的?? 重载的名称是什么!
Form1类中的Button1 是否为公有还是私有?
下班!不说啦。又一天的工资到手~~哈哈~~
Top
6 楼rabbitwy(流浪小兔)回复于 2002-06-10 18:48:33 得分 0
呵呵,刚才我忘了说了,BUTTON要被定义为STATIC PUBLIC 型,然后,把所有的this.button1(就是BUTTON的实例)改为button1(就是去掉THIS啦),然后在你的CLASS2里就可以用 Form1.button1.Text = "hello world" 了,:)Top
7 楼dzq138(钟添)回复于 2002-06-10 18:58:31 得分 40
用不了吧,你Form1重载了吗?在那重载的?
Form1 form1 =new Form1 ();
form1.Show();
form1.button1.Text = "hello world" ;//这是绝对没问题的。
如果不是在同一class里重载Form1的则需你自己开动脑筋想想这个逻辑了。想办法去得到这个实例form1。
祝你好运.
Top
8 楼rabbitwy(流浪小兔)回复于 2002-06-10 21:42:25 得分 40
哟,楼上也在加班的说?
呵呵,我觉得seaman_X (水手) 的意思是改变已经存在的控件的属性值,我以前也用过,再不然就是得到那个FORM1的句柄,太麻烦了!:)
如果能重载那当然方便了,就用你说的方法 。:)Top
9 楼seaman_X(水手)回复于 2002-06-12 13:30:52 得分 0
谢谢,我回家再试试!Top




