首页 > 解决方案 > 如何从另一个表单访问 DataGridView?

问题描述

在form1中,我创建了一个用数据库填充行的datagridview。在form2中,我想向用户显示form1中datagridview的特定行。特定行由用户选择!!!我将我的 datagridview 设置为 public 修饰符,这是我的表单 2 代码:

form1 parentsell = new form1();
string selecteduser = parentsell.propertydatagrid.Rows[selectedrowindex].Cells[72].Value.ToString();
MessageBox.Show(selecteduser);

构建程序时没有错误,但运行后给我一个错误。

标签: c#winformsdatagridview

解决方案


因此,您可能使用查找表单,您需要通过引用传递值,最简单的方法是像这样创建类 User:

public Class User
{
   public string name {get; set;}
}

然后你可以在主窗体中创建该对象的实例,就像这样

User user = new User();
form1 parentsell = new form1(user);
parentsell.ShowDialog(); // This will open another form and wait you to finish work
MessageBox.Show(user.name);

在 form1 中,您需要创建另一个构造函数和 User 实例

User user;
public form1(User user)
{
   InitializeComponent();
   this.user = user;
}

现在你需要一些按钮,上面写着“好的,我找到了这个用户,现在带他关闭这个表单”,如下所示:

private void button1_Click(object Sender, EventArgs e)
{
   user.name = ...; //find your user, DGV.selectedRows[0].Cells[somehing].Value.ToString(); I think it's like this...
   this.Close();
}

你应该让你选择的用户在主窗体中


推荐阅读