摘 要:程序設(shè)計中經(jīng)常需要把參數(shù)從一個函數(shù)傳遞到另一個函數(shù),或者獲取某個函數(shù)的返回值。基于Winform的程序經(jīng)常需要把參數(shù)從一個窗體傳入到另一個窗體,或者某一窗體中內(nèi)容變更時另一窗體相同內(nèi)容隨之改變,利用C#提供的類、對象屬性、委托幾種機制,提出通過使用構(gòu)造函數(shù)對對象進行初始化、變更對象屬性、借助委托等方法實現(xiàn)多個窗體間的參數(shù)傳遞和內(nèi)容的同步更新顯示。在對各種方法應(yīng)用對比的同時,重點發(fā)掘了委托機制為實現(xiàn)窗體間內(nèi)容的傳遞和同步更新所帶來的優(yōu)勢。
關(guān)鍵詞: 參數(shù)傳遞; 同步顯示; Winform程序; C Sharp
中圖分類號:TN98; TP311 文獻標(biāo)識碼:A 文章編號:1004-373X(2010)14-0064-03
Realization of C#-based Winform Program Parameter Transmission and Synchronous Display
LIU Hui, CHANG Wan-lun
(Higher Institute of Technolog, Xi’an University of Technology, Xi’an 710082, China)
Abstract: The parameter transmission between forms and the synchronous update display realized with methods of the object initialization, variation of object properties and authorization implemented by constructing functions is put forward by the mechanisms of C#-provided classes, object properties and authorization. By comparisonwith various methods, the authorization mechanism is explored emphatically to realize the parameter transmission between forms and synchronous update.
Keywords: parameter transmission; synchronous display; Winform program; C Sharp
目前,微軟的.NET平臺已經(jīng)成為主流的開發(fā)平臺,幾乎與Sun公司的Java語言并駕齊驅(qū),而C#是.NET平臺的主流語言,且日益受到了程序員的喜愛。
在程序設(shè)計中,常需要把參數(shù)從一個函數(shù)傳遞到另一個函數(shù)中,這就是通常所說的函數(shù)調(diào)用過程中的參數(shù)傳遞,即用實參的值傳遞給形參的方式來傳遞信息。C#程序設(shè)計也不例外,同樣存在著值傳遞和引用傳遞兩種方法[1-3]。同時,在進行Winform程序設(shè)計時,當(dāng)多個窗體間發(fā)生參數(shù)傳遞時,一個窗體中的值發(fā)生變更,其他窗體顯示的內(nèi)容也應(yīng)該同步更新。
1 Winform程序的值傳遞
值傳遞(call by value)中,函數(shù)將參數(shù)復(fù)制到子程序的參數(shù)中,改變子程序的參數(shù)不會影響用于調(diào)用的參數(shù)。如圖1所示。在C#的TestWindowsApplication 項目中存在著兩個窗體,現(xiàn)在需要在按“確定”按鈕后彈出窗體Form2,并把窗體Form1中TextBox控件tB中的內(nèi)容單向傳遞到窗體Form2中的Label控件lB中,并顯示出來。……