InvokeRequired 當(dāng)前線程不是創(chuàng)建控件的線程時(shí)為true
比如你可以自己開(kāi)一個(gè)Thread,或使用Timer的事件來(lái)訪問(wèn)窗體上的控件的時(shí)候,在線程中窗體的這個(gè)屬性就是True的。
簡(jiǎn)單的說(shuō),如果有兩個(gè)線程,Thread A和Thread B,并且有一個(gè)Control c,是在Thread A里面new的。
那么在Thread A里面運(yùn)行的任何方法調(diào)用c.InvokeRequired都會(huì)返回false。
相反,如果在Thread B里面運(yùn)行的任何方法調(diào)用c.InvokeRequired都會(huì)返回true。
是否是UI線程與結(jié)果無(wú)關(guān)。(通常Control所在的線程是UI線程,但是可以有例外)