窗體啟動會啟動乙個程式主線程,如果在from_load()方法中呼叫服務,呼叫服務操作會阻塞主程式。
只需要將呼叫服務的操作放到其他執行緒中處理就可以解決這個問題。
比如:
複製** **如下:
thread servicethread=null;
public void testform_load(o程式設計客棧bject sender, eventargswww.cppcns.com www.cppcns.come)
private void regservice()
注意:開啟了執行緒要記得關閉,不然當關閉該窗體時其主程序關不掉,因為還有執行緒存在。可以在fromclosed()方法裡將該執行緒關閉。
複製** **如下:
private void testform_formclosed(object sender, formclosedeventargs e)
本文標題: winform窗體呼叫wcf服務窗體卡死問題
本文位址: /ruanjian/csharp/90944.html
winform在子窗體呼叫父窗體的控制項
一 如果是在兩個無關的窗體間要實現上述的訪問可以使用form的owenr屬性 在form1中新增 form2 form2 new form2 this.addownedform form2 或ji.showdialog this 向父窗體新增附屬窗體 在form2中新增 form1 form1 fo...
如何跨執行緒呼叫winform窗體控制項
方法一 直接關閉異常,不檢查跨執行緒呼叫private void form1 load object sender,eventargs e 方法二 利用委託 舉例1 delegate void tasktype string sztext 這裡是因為執行緒的方法只能是object型別 void th...
WinForm窗體動畫
在窗體的load 和 closing事件發生的時候,直接呼叫animation.animatewindow函式即可,簡單容易。如下 using system.runtime.interopservices public class animation 淡入窗體 private void form l...