最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#多線程與跨線程訪問界面控件的方法

 更新時間:2015年03月03日 11:19:58   作者:尋i  
這篇文章主要介紹了C#多線程與跨線程訪問界面控件的方法,實例分析了C#多線程與跨線程訪問空間的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了C#多線程與跨線程訪問界面控件的方法。分享給大家供大家參考。具體分析如下:

在編寫WinForm訪問WebService時,常會遇到因為網(wǎng)絡(luò)延遲造成界面卡死的現(xiàn)象。啟用新線程去訪問WebService是一個可行的方法。

典型的,有下面的啟動新線程示例:

復(fù)制代碼 代碼如下:
private void LoadRemoteAppVersion() 

    if (FileName.Text.Trim() == "") return; 
    StatusLabel.Text = "正在加載"; 
    S_Controllers_Bins.S_Controllers_BinsSoapClient service = new S_Controllers_Bins.S_Controllers_BinsSoapClient(); 
    S_Controllers_Bins.Controllers_Bins m = service.QueryFileName(FileName.Text.Trim()); 
    if (m != null) 
    { 
        //todo: 
        StatusLabel.Text = "加載成功"; 
    }else 
        StatusLabel.Text = "加載失敗"; 

private void BtnLoadBinInformation(object sender, EventArgs e) 

    Thread nonParameterThread = new Thread(new ThreadStart(LoadRemoteAppVersion)); 
    nonParameterThread.Start();   
}

運行程序的時候,如果要在線程里操作界面控件,可能會提示不能跨線程訪問界面控件,有兩種處理方法:

1.啟動程序改一下:

復(fù)制代碼 代碼如下:
/// <summary> 
/// 應(yīng)用程序的主入口點。 
/// </summary> 
[STAThread] 
static void Main() 

    Application.EnableVisualStyles();  
    System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false; 
    Application.SetCompatibleTextRenderingDefault(false); 
    Application.Run(new Form1()); 
}

2.使用委托
復(fù)制代碼 代碼如下:
public delegate void LoadRemoteAppVersionDelegate(); //定義委托變量
private void BtnLoadBinInformation(object sender, EventArgs e) 

    LoadRemoteAppVersionDelegate func = new LoadRemoteAppVersionDelegate(LoadRemoteAppVersion);//<span style="font-family: Arial, Helvetica, sans-serif;">LoadRemoteAppVersion不用修改</span> 
    func.BeginInvoke(null, null); 
}

希望本文所述對大家的C#程序設(shè)計有所幫助。

相關(guān)文章

  • .net 通過 WebAPI 調(diào)用nsfwjs 進行視頻鑒別功能

    .net 通過 WebAPI 調(diào)用nsfwjs 進行視頻鑒別功能

    這篇文章主要介紹了.net 通過 WebAPI 調(diào)用 nsfwjs 進行視頻鑒別,文末給大家提到了FFMPEG獲取視頻關(guān)鍵幀并保存成jpg圖像的相關(guān)知識,需要的朋友可以參考下
    2021-09-09
  • C#使用游標(biāo)實現(xiàn)補間函數(shù)

    C#使用游標(biāo)實現(xiàn)補間函數(shù)

    這篇文章主要為大家詳細(xì)介紹了C#使用游標(biāo)實現(xiàn)補間函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C#實現(xiàn)基于加減按鈕形式控制系統(tǒng)音量及靜音的方法

    C#實現(xiàn)基于加減按鈕形式控制系統(tǒng)音量及靜音的方法

    這篇文章主要介紹了C#實現(xiàn)基于加減按鈕形式控制系統(tǒng)音量及靜音的方法,涉及C#引用user32.dll動態(tài)鏈接庫操作系統(tǒng)音量的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • C#實現(xiàn)的Windows剪貼板監(jiān)視器功能實例【附demo源碼下載】

    C#實現(xiàn)的Windows剪貼板監(jiān)視器功能實例【附demo源碼下載】

    這篇文章主要介紹了C#實現(xiàn)的Windows剪貼板監(jiān)視器功能,結(jié)合實例形式分析了C#實現(xiàn)剪貼板監(jiān)視功能所涉及的相關(guān)Windows API函數(shù)與使用技巧,需要的朋友可以參考下
    2016-08-08
  • C#中is和as用法實例分析

    C#中is和as用法實例分析

    這篇文章主要介紹了C#中is和as用法實例分析,需要的朋友可以參考下
    2014-08-08
  • C#實現(xiàn)簡易猜數(shù)字游戲

    C#實現(xiàn)簡易猜數(shù)字游戲

    這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)簡易猜數(shù)字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • C#導(dǎo)入和導(dǎo)出CSV文件

    C#導(dǎo)入和導(dǎo)出CSV文件

    這篇文章介紹了C#導(dǎo)入和導(dǎo)出CSV文件的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C# 動態(tài)加載程序集信息

    C# 動態(tài)加載程序集信息

    在設(shè)計模式的策略模式中,需要動態(tài)加載程序集信息,本文通過一個簡單的實例,來講解動態(tài)加載Dll需要的知識點。下面跟著小編一起來看下吧
    2017-03-03
  • 淺談C#單例模式的實現(xiàn)和性能對比

    淺談C#單例模式的實現(xiàn)和性能對比

    這篇文章主要介紹了淺談C#單例模式的實現(xiàn)和性能對比的相關(guān)資料,詳細(xì)的介紹了6種實現(xiàn)方式,需要的朋友可以參考下
    2017-09-09
  • 基于C#實現(xiàn)簡易的鍵盤記錄器

    基于C#實現(xiàn)簡易的鍵盤記錄器

    本文將利用C#語言和HOOK技術(shù)來做一個鍵盤記錄器,看看一天下來,我們點擊了多少次鍵盤,哪些鍵的使用頻率最高,感興趣的小伙伴可以嘗試一下
    2022-08-08

最新評論

雅安市| 鱼台县| 图木舒克市| 永福县| 天气| 保德县| 萨嘎县| 谢通门县| 仙桃市| 顺义区| 临沂市| 大埔区| 阿拉善右旗| 富平县| 无为县| 松阳县| 滕州市| 武义县| 万全县| 台中市| 定西市| 杭锦旗| 博乐市| 凤翔县| 佛冈县| 甘南县| 舒城县| 海城市| 金阳县| 玉环县| 息烽县| 伊金霍洛旗| 河源市| 金秀| 泸西县| 安阳县| 青海省| 正安县| 康乐县| 扎赉特旗| 桂阳县|