我正在研究C#windows應用程序。此應用程序主要涉及套接字。適用於套接字應用程序的c#backgroundworker
我有一個名爲tcpsocket的類,它處理髮送,接收數據等所有套接字級功能。控制器類調用此tcpsocket。另外,它執行將數據記錄到文件和更新GUI的所有其他工作。我認爲在後臺工作人員中設置此控制器會很好,以確保gui始終處於響應狀態。首先,這樣做是個好主意嗎?
因爲我正在嘗試這樣做,所以我面臨着一個關於backgroundworker的progresschanged處理程序的問題。我希望能夠在文本字段中顯示連接狀態(類型:字符串),並在richTextBox中顯示應用程序發送/接收的數據(類型:字節[])。由於控制器只能通過progressChanged事件向gui發送數據,因此如何將不同類型的數據(字符串/字節[])傳遞給gui?
所以爲了確保我明白了,我將有事件觸發不同類型的數據,並且processHandler是一種事件。我對麼? – Batul 2010-08-03 14:53:48
是的,如果你需要傳遞一個數據類型而不是字節,你可以從你的控制器類創建不同類型的事件,並將它們指向UI線程上的不同處理器。 – Doug 2010-08-03 15:29:56
謝謝,這聽起來不錯。我想我會使用processChangedHandler僅顯示鏈接的狀態(已連接/斷開連接)並將事件用於所有其他數據。非常感謝......現在對我來說更加清楚。 – Batul 2010-08-03 15:46:37