日期:2014-05-17  浏览次数:20899 次

一个窗体对应多个窗体的响应怎么处理呢?




一个基础窗体A窗体(比如是产品信息查询窗体),多个父窗体(比如多个单据窗体)B-Z
当B窗体单击查询按钮就弹出A窗体,然后在A窗体里面查询产品并选择之后返回数据到B窗体(A回返回数据给调用他的父窗体)  这个该怎么实现呢 ,如果能有详细代码最好 多谢
============================================================
A与其他窗体是1对多的关系 



------解决方案--------------------
http://www.cnblogs.com/cosoft/archive/2011/08/08/2130659.html
------解决方案--------------------
我的思路是 定义枚举 标记好 是 来自哪个窗体调用A的
这是我写的代码3个按钮调用一个窗体

/// <summary>
        /// 弹出选择窗体事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="customsInspectionControl"></param>
        public static void BtnSelectClick(object sender, CustomsInspectionControl customsInspectionControl) 
        {
            Button btn = sender as Button;
            SelectType st = new SelectType();

            switch (btn.Name)
            {
                case "BtnSuoXuDanZheng":
                    st.BtnSelectType = BtnType.BtnSuoXuDanZheng;
                    st.ListSuoXuDanZheng = customsInspectionControl.RequiredDocuments[1].Text;
                    break;
                case "btnSuiFuDanJu":
                    st.BtnSelectType = BtnType.BtnSuiFuDanJu;
                    st.ListSuiFuDanJu = customsInspectionControl.AccompanyingDocuments[1].Text;
                    break;
              &nb