如何从另一个表单填充 datagridview 单元格? C#
How to fill a datagridview cell from another form ? C#
我是 C# 的初学者,目前对我来说最困难的事情是理解如何将数据从 form/class 传递到另一个 form/class 并修改对象。我知道我应该使用事件或委托,但我还不确定如何使用它。
目前,我的 Form1 中有一个 datagridview(带有 Column_Name、Column_Age 等),而在我的 Form2 中,我有一些文本框,用户将使用按钮填充和验证这些文本框.
我希望当用户按下 Form2 中的验证按钮时,文本框文本会转到 Form1 中我的 datagridview 的单元格,在最后一行。
示例:
(Form1)
- 用户在
textbox_Name
中写入 "Henri",在 textbox_Age
中写入“52”,等等
- 他通过点击
button1
进行验证
(Form2)
- 当用户通过单击 button1 (Form2) 进行验证时,最后一个索引行(新行)中的每个单元格都将获得文本框的相应值。示例:
datagridview1[*newrow.Index*,Column_Name.Index] = textbox_Name.Text.ToString();
datagridview1[*newrow.Index*,Column_Age.Index] = textbox_Age.Text.ToString();
等
不确定 newrow.Index
谢谢!如果你有一些好的链接可以帮助我,我会接受!
好的,所以我找到了解决方案。如果您不这样做,请告诉我。
在 Form1.cs
中:
private static Form1 _Form1;
public static Form1 GetInstance()
{
if (_Form1 == null)
{
_Form1 = new Form1();
}
return _Form1;
}
在Form2.cs
中:
private void button1_Click(object sender, EventArgs e)
{
Form1.GetInstance().dataGridView1[Form1.GetInstance().Column_Name.Index, Form1.GetInstance().dataGridView1.Rows.Add()].Value = textbox_Name.Text.ToString();
Form1.GetInstance().dataGridView1[Form1.GetInstance().Column_Age.Index, Form1.GetInstance().dataGridView1.Rows.Add()].Value = textbox_Age.Text.ToString();
}
我是 C# 的初学者,目前对我来说最困难的事情是理解如何将数据从 form/class 传递到另一个 form/class 并修改对象。我知道我应该使用事件或委托,但我还不确定如何使用它。
目前,我的 Form1 中有一个 datagridview(带有 Column_Name、Column_Age 等),而在我的 Form2 中,我有一些文本框,用户将使用按钮填充和验证这些文本框.
我希望当用户按下 Form2 中的验证按钮时,文本框文本会转到 Form1 中我的 datagridview 的单元格,在最后一行。
示例:
(Form1)
- 用户在
textbox_Name
中写入 "Henri",在textbox_Age
中写入“52”,等等 - 他通过点击
button1
进行验证
(Form2)
- 当用户通过单击 button1 (Form2) 进行验证时,最后一个索引行(新行)中的每个单元格都将获得文本框的相应值。示例:
datagridview1[*newrow.Index*,Column_Name.Index] = textbox_Name.Text.ToString();
datagridview1[*newrow.Index*,Column_Age.Index] = textbox_Age.Text.ToString();
等
不确定 newrow.Index
谢谢!如果你有一些好的链接可以帮助我,我会接受!
好的,所以我找到了解决方案。如果您不这样做,请告诉我。
在 Form1.cs
中:
private static Form1 _Form1;
public static Form1 GetInstance()
{
if (_Form1 == null)
{
_Form1 = new Form1();
}
return _Form1;
}
在Form2.cs
中:
private void button1_Click(object sender, EventArgs e)
{
Form1.GetInstance().dataGridView1[Form1.GetInstance().Column_Name.Index, Form1.GetInstance().dataGridView1.Rows.Add()].Value = textbox_Name.Text.ToString();
Form1.GetInstance().dataGridView1[Form1.GetInstance().Column_Age.Index, Form1.GetInstance().dataGridView1.Rows.Add()].Value = textbox_Age.Text.ToString();
}