Winform中窗體中兩用戶控件傳值

最近在做一個小項目,中間遇到了一個問題,由於多個窗體中要用到單位選擇,於是自己做了一個下拉選擇樹的用戶組件,

想通過用戶選擇完單位後,傳到另外一個用戶控件中去,

在這個控件中通過在下拉選擇樹中用戶選擇的節點編號,到數據庫中進行查詢,

最終問題解決了,在這裏面把思路和大家分享一下:

(1)首先在下拉選擇樹控件中添加一個委託事件,

  public event Action<string> AfterSelectEvent;

(2)當用戶選擇完節點後,觸發事件

private void DropDown_FinishEditing(object sender, DropDownValueChangedEventArgs e)
        {

/////,,,,,,
                    AfterSelectEvent(dn.SelectedNode.Text);
           // LogEvent(().Name + ".FinishEditing", e.Value);
        }

(3)在窗體加載時間中註冊AfterSelectEvent事件

 private void frm_jbxx_Load(object sender, EventArgs e)
        {
           // dwxz1是用戶控件的名字

            dwxz1.AfterSelectEvent += new Action<string>(dwxz1_AfterSelectEvent);
        }

        void dwxz1_AfterSelectEvent(string obj)
        {
            pycx1._xjd = obj.Split('-')[1];/////pycx1是另外一個用戶控件的名字,_xjd是其屬性
        }

(4)到此,基本上實現了兩個用戶控件間的傳值操作

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章