通過事件進行窗體傳值,自己一些粗淺的看法

2021-06-21 13:01:24 字數 614 閱讀 9251

窗體通過事件傳值

首先在要傳值的類中的主函式外寫乙個事件,用系統提供的委託寫

public event eventhander  事件名字

由於用了系統的委託eventhander所以在寫要使用的方法時要和委託的引數一樣

就是(object sender,eventargs e)

方法裡的引數也要這樣寫才行

在要傳值的類中再建乙個新的類,繼承於eventargs  這個類裡面寫乙個屬性用來傳值

繼承於eventargs是因為引數中有這個型別的引數,同時也是因為是系統給的型別所以

可能在賦值比較麻煩,因此繼承更加方便,也具備父類的特性,可以傳值

然後再被傳值的窗體中as一下    是用委託的方法中的eventargs引數e   as一下 變為

子類,呼叫子類的屬性  就可以賦值了 如:  子類名  子類物件=e  as  子類名

這樣框架基本就好了,給建立的事件定義委託 如: this.事件名+=new 委託(方法名)

在要傳值的窗體中新建個子類的物件,給物件的屬性賦值

如果事件不為空  呼叫事件   if(事件名!=null)  this.事件名(this,物件名)

ok

通過事件進行窗體傳值

首先,在工程中新建兩個窗體 窗體1的textbox文字框填入資料,便可將值傳給窗體2的文字框中。具體步驟如下 1 新建乙個類 public class sendvalueeventargs eventargs public sendvalueeventargs string value 2 在窗體1...

c 通過委託進行窗體傳值

窗體傳值,通俗來講就是兩個窗體的類之間的傳值。而通過委託來傳值,通俗來說就是將某個窗體的方法通過委託傳遞給另外乙個窗體,以實現窗體間的資訊交流。該demo使用winform實現,新建了兩個窗體,分別是form1和form2,form1裡有textbox控制項,通過鍵入文字資訊,以實現將文字資訊傳到f...

WPF中子窗體通過事件像主窗體傳值

子窗體宣告事件 在命名空間下宣告委託 public delegate void sxdelegate string lein,string riin 宣告委託在子窗體類下宣告事件 public event sxdelegate sxevent 宣告事件在事件中傳入值 private void okd...