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# ,