当前位置:编程学习 > C#/ASP.NET >>

C# 两窗体直接传参数的四种方法讲解

实现两个窗体直接传参数的方法很多,感觉挺难,其实真正的做了,也没有那么难。

传参数

方法一:把控件声明成为public的。

方法二:借助一个中间类来实现。

方法三:用public static声明要传送的变量

方法四:用构造函数传。

一般这四个方法就够了。

例子

如我做过的一个进销存软件,进货的时候要从货物信息中取得货物编号(用户不能输入编号)。而货物信息是另一个窗体,怎么实现点击获得 货物编号按钮(在进货窗体中) 弹出货 物信息窗体,然后从 货物信息窗体 选择要进的货物后返回给 进货窗体 呢?

假设进货窗体是 purchase.cs

货物窗体是 material.cs

在purchase.cs窗体的 获得 货物编号按钮 单击事件中写入如下代码:

            material m = new material();
            m.ShowDialog();
            if (m.DialogResult == DialogResult.OK)
            {
                txtinmid.Text = m.getmid;

                 //getmid是material的一个构造函数,txtinmid是purchase.cs中显示 货物编号 的文本框

                m.Close();
            }
            GetbaseMaterialinfo();//自己的一个方法

然后在material.cs窗体中写入如下代码。

        public material()//默认的构造函数
        {
            InitializeComponent();
        }
        public string getmid//就是这个了。
        {
            get
            {
                return dgvmaterial.Rows[dgvmaterial.CurrentRow.Index].Cells[1].Value.ToString();
            }
        }

这是激活方法(我的是双击datagridview行)

private void datagridview_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            this.DialogResult = DialogResult.OK;
        }

这样purchase.cs窗体的显示货物编号按钮就可以获得你选定的商品了。简单吧。

补充:软件开发 , C# ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,