通過委託實現窗口刷新

下面是“人生如夢”大哥給的代碼,但是在下看不懂啊,還請各位大俠多多拿指教。問題在代碼中。
在下有實現功能是在一個窗口中提交數據,然後刷新綁定此數據的窗口的DGV。
問題2:這個“button1_Click”事件的作用是什麼?爲什麼要判斷委託事件不爲空則執行?
用委託簡單一點的意思就是。。  
比如我有兩個類
A和B 
A要像B傳遞一些數據,然後B修改當前的數據。
比如B有一個私有成員string str;
有方法changStr(string str){this.str=str};
這時候A要把一個字符"x"傳給B,讓B修改它的私有成員str爲這個"X"
一般的做法是在A中調用B的changStr方法 實現傳遞數據。
但是爲了降低類的耦合度,我們需要這種方式:
就是A要向B傳遞數據,但是A不關心,也不用知道B裏到底有什麼方法;
其實準確來說A也不關心到底這個數據要傳到哪裏去。
A只要調用自己的方法,比如SendData("x") 就可以把數據傳出去。
委託就是用做這個目的。
這裏我們假定A的實例對象爲a
然後我們需要在B中捕獲a發出的這個數據
委託一般與事件配合起來一起使用,經典的用法:委託+事件=觀察模式   實現功能代碼如下([1]):   假設我們有個高檔的熱水器,我們給它通上電,當水溫超過95度的時候:1、揚聲器會開始發出語音,告訴你水的溫度;2、液晶屏也會改變水溫的顯示,來提示水已經快燒開了。   現在我們需要寫個程序來模擬這個燒水的過程,我們將定義一個類來代表熱水器,我們管它叫:Heater,它有代表水溫的字段,叫做temperature;當然,還有必不可少的給水加熱方法BoilWater(),一個發出語音警報的方法MakeAlert(),一個顯示水溫的方法

比如說用這樣的結構打開打印首選項:
搜了好幾天了,現在只能利用API打開控制面板的printFloder

vs2005+sp2開發的程序在XP上安裝,裝上2.0FrameWork+sp2程序雙擊後沒有任何反應。進程裏面有運行,想請教在XP機上除了裝上.net Framework 2.0 + sp2外還需要再裝什麼?vs2005自帶.net framework和必要的更新,不需要其它軟件。
安裝前關閉殺毒軟件,並且最好使用原版操作系統,而不是ghost版或者修改版。

具體原因是什麼?因爲客戶那邊不可能去重裝系統!客戶那邊應用很多軟件在那裏,重裝系統更加麻煩。有沒有好的解決方法?

看看你引用了什麼DLL,你在什麼路徑引用的dll,就將這些dll複製到客戶端試試,應該是dll版本的問題,我遇到過,就例如說 kernel32.dll 這個,xp的和win2003的就不兼容,啓動程序沒反應,檢查一下dll版本的問題吧。
不一定,樓主需要在XP的計算機上面進行調試,有可能是環境配置問題。

我在客戶機上裝過1.1版本的也就是vs2003做的程序,只要裝個1.1就可以了,這個vs2005只不過是這個的升級版,就不行了。

還有誰遇到過這種情況嗎?
微軟也真是,打不開也不拋個異常給看看是什麼原因,一點動靜都沒有,讓人去猜。

動態調試就知道啦,何必等待。呵呵呵動態調試?要怎麼調試?在客戶機上沒有環境呀?

應該不是機器的問題,可能是你程序裏的問題
一般都是connString 裏面放完整的連接字符串,而不僅僅是文件名
其他引用的地方,直接等於connString就行了,不用再拼接了,

現有Queue<T>集合,有多個線程向集合中添加數據,另有多個線程從中取出數據,
請問如何實現同步,請使用AutoResetEvent,ManualResetEvent及WaitHandle實現。

認認真真的把C#語法學習下,然後學習好數據庫操作,html,js,瞭解下asp.net的控件。就可以了,之於框架什麼的,使用即可

來源:足球直播

發佈了40 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章