将 DataGridView 的值从一种形式传递到 Class

Passing Value of DataGridView from One form to a Class

我在将 DataGridView 的值传递给 class 时遇到困难。我想使用单独的 class 读取表单的 datagridview 的所有内容。我尝试了以下操作(假设 dgv1 是一个包含内容的现有 dataGridView):

public void buttonClick()
{
    SeparateClass separateClass = new SeparateClass();
    separateClass.getDataGridViewDetails(dgv1);
}

并且以下代码在单独的 class 中接收 dgv1:

public void getDataGridViewDetails(DataGridView dgv1)
{
     string celValue = dgv1.Rows[0].Cells[0].Value.ToString();
}

但是 returns 一个空值,这意味着我未能将现有 DataGridView 的值传递给另一个 class。你能告诉我将 DataGridView 的值传递给另一个 class 的正确代码是什么吗?非常感谢。 . .

在这种情况下,我会使用以下方法从我的 Class 访问 DataGridView..

在您的表单中,您将拥有..

public void buttonClick()
{
   SeparateClass separateClass = new SeparateClass();
   seperateClass.formObj = this;
   seperateClass.getDataGridViewDetails();
}

在你的 class 中你会有..

public Form1 formObj;

public void getDataGridViewDetails()
{
   string celValue = formObj.dataGridView1.Rows[0].Cells[0].Value.ToString();
}

此外,如上面评论中所述,您需要将 DataGridView 修饰符设置为 Public