作者mtm ( )
看板C_Sharp
标题[问题] 请教invoke的用法以及使用时机
时间Wed Jan 14 20:53:41 2009
假设我有class A 跟class Form
先在Form里面new一个A
接着从Form的UI Thread去Call了A的method X
(这时候X是在一个新的Thread里面跑吧?)
当我这个 X 跑完或是跑到中途的时候,我想要改动Form里面TextBox的内容
但是UI Thread似乎不会允许我这样做,尤其在使用.net compact framework时
就直接跳个error说要用control.invoke来做这样的事情
所以想请问,我应该要在new A这个class的时候把Form的this丢进去吗?
当然A这个class会先宣告一个 System.Windows.Forms.Form myForm = null;
construct时 myForm = form
顺带问,即使我有了myForm,也应该不能直接做myForm.TextBox1.Text = "abc";
这样的动作吧?
我应该要怎麽做,才能从class A里面的某一个Method里面,去改动到Form的TextBox
另外一问,我如果要从Class A去call一个Form里面独立的public void Method()
可以直接 myForm.Method() 吗?还是说这个也得绕路?
目前有点昏头中,思绪一整个乱糟糟
我这边的观念实在是不太懂,而且我delegate也不太熟析
不知道有没有大大能做个范例详细解说一下,感激不尽 m(_._)m
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.162.50