Winform中窗体中两用户控件传值

最近在做一个小项目,中间遇到了一个问题,由于多个窗体中要用到单位选择,于是自己做了一个下拉选择树的用户组件,

想通过用户选择完单位后,传到另外一个用户控件中去,

在这个控件中通过在下拉选择树中用户选择的节点编号,到数据库中进行查询,

最终问题解决了,在这里面把思路和大家分享一下:

(1)首先在下拉选择树控件中添加一个委托事件,

  public event Action 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(dwxz1_AfterSelectEvent);
        }

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

(4)到此,基本上实现了两个用户控件间的传值操作

 

 

你可能感兴趣的:(c#)