当网格视图包含来自两个表的数据时,单元格单击不起作用

本文关键字:数据 不起作用 单击 单元格 两个 包含 视图 网格 | 更新日期: 2023-09-27 18:12:57

我在同一个网格视图中显示了来自两个不同表的数据。
当我单击UI中的按钮时,结果相应地显示在网格视图中。
现在我想单击网格视图中的一个单元格,并将各自行的ID传递给另一个文本框(在本例中为"M_ID")。

它工作,但当添加下一行传递来自另一个表的"A_ID"时,它不工作。

有两个按钮在UI和两个按钮返回各自的结果从两个不同的表(不是在一个时间,但当我按下它们)在同一个网格视图,当我按下它们。

private void datagridviewResult_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
        if (e.RowIndex >= 0)
        {
            DataGridViewRow row = this.datagridviewResult.Rows[e.RowIndex];
            txtGenerateId.Text = row.Cells["M_ID"].Value.ToString();
            txtGenerateId.Text = row.Cells["A_ID"].Value.ToString();
        }
    }

当网格视图包含来自两个表的数据时,单元格单击不起作用

我不太确定你期望的输出是什么,但也许你不想覆盖txtGenerateId.Text,像这样:

private void datagridviewResult_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
        if (e.RowIndex >= 0)
        {
            DataGridViewRow row = this.datagridviewResult.Rows[e.RowIndex];
            txtGenerateId.Text = string.Format("{0},{1}", 
                row.Cells["M_ID"].Value.ToString(),
                row.Cells["A_ID"].Value.ToString()); 
        }
    }

这将把两个表的结果放在用逗号分隔的文本框中。{0},{1}是一个模板,您可以切换逗号来显示两个结果。