C# 将信息从一个窗体发送到另一个窗体Windows窗体
我有一个问题:我必须填写表格。一个表单有dataGridView和一个按钮。单击按钮时,创建Form2,在其中输入信息。这些信息需要添加到第一个表单上的dataGridView中。但当我点击表单2中的“添加”按钮时, 我有一个错误NullReferenceException未处理(对象引用未设置为对象的实例)。请帮帮我 表格1 表格2C# 将信息从一个窗体发送到另一个窗体Windows窗体,c#,winforms,datagridview,C#,Winforms,Datagridview,我有一个问题:我必须填写表格。一个表单有dataGridView和一个按钮。单击按钮时,创建Form2,在其中输入信息。这些信息需要添加到第一个表单上的dataGridView中。但当我点击表单2中的“添加”按钮时, 我有一个错误NullReferenceException未处理(对象引用未设置为对象的实例)。请帮帮我 表格1 表格2 更新以下语句可以解决您的问题 private void Add_Click(object sender, EventArgs e) { add_waibi
更新以下语句可以解决您的问题
private void Add_Click(object sender, EventArgs e)
{
add_waibil_goods = new AddWaybilGoods();
if (add_waibil_goods.ShowDialog(this) == DialogResult.OK)
{
dataGridView1.Rows.Add(add_waibil_goods.GoodsName2, add_waibil_goods.GoodsPrice2, add_waibil_goods.GoodsCount2);
dataGridView1.Update();
}
}
添加到dataGridView1时,您似乎引用了Form1中的属性。您还需要启动form2作为模式窗口。模式窗口将确保用户在应用程序继续之前填写正确的数据
要访问
Form2
中的Form1
公共成员,您可以将相同的实例发送到构造函数中的Form1
请参阅以下代码:
表格1:
private void Add_Click(object sender, EventArgs e)
{
add_waibil_goods = new AddWaybilGoods(this); //parameterized constructor
add_waibil_goods.Show(this); //assign owner
add_waibil_goods.Focus();
dataGridView1.Rows.Add(GoodsName2,GoodsPrice2, GoodsCount2);
dataGridView1.Update();
}
public partial class AddWaybilGoods : Form
{
Waybil w_b = null;
public string GoodsName1 = null;
public string GoodsPrice1 = null;
public string GoodsCount1 = null;
public AddWaybilGoods(Waybil wb)
{
InitializeComponent();
w_b= wb;
Base base_ = new Base(Share.server_address, Share.login, Share.password, Share.database);
base_.fill_combo(AddWaybilGoods1, "Goods", "GoodsName");
}
//... other methods
}
表格2:
private void Add_Click(object sender, EventArgs e)
{
add_waibil_goods = new AddWaybilGoods(this); //parameterized constructor
add_waibil_goods.Show(this); //assign owner
add_waibil_goods.Focus();
dataGridView1.Rows.Add(GoodsName2,GoodsPrice2, GoodsCount2);
dataGridView1.Update();
}
public partial class AddWaybilGoods : Form
{
Waybil w_b = null;
public string GoodsName1 = null;
public string GoodsPrice1 = null;
public string GoodsCount1 = null;
public AddWaybilGoods(Waybil wb)
{
InitializeComponent();
w_b= wb;
Base base_ = new Base(Share.server_address, Share.login, Share.password, Share.database);
base_.fill_combo(AddWaybilGoods1, "Goods", "GoodsName");
}
//... other methods
}
您在哪一行收到异常?请解释一下。