【发布时间】:2021-07-04 06:12:32
【问题描述】:
我在 from 中添加了两个 datagridview。 datagridview1 命名为 lotDetailDataGridView 及其名为 Quality 的列从 sql 数据库获取数据,datagridview2 命名为 pieceDetailDataGridView 及其名为 quality 的列是组合框列,并从 @987654331 的列 Quality 中获取项目@像这样:
我这样做是为了获取 Quality 的列 lotDetailDataGridView 的项目:
private void addQualityToCombo()
{
string[] val = new string[lotDetailDataGridView.Rows.Count - 1];
for (int i = 0; i < lotDetailDataGridView.Rows.Count - 1; i++)
{
if (lotDetailDataGridView[1, i].Value != null)
{
val[i] = lotDetailDataGridView[1, i].Value.ToString();
pieceDetailQualityColumn.DataSource = val;
}
}
}
private void lotDetailDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
addQualityToCombo();
}
我想要的只是当我更改 pieceDetailDataGridView's quality 列中的值时,它应该在 lotDetailDataGridView's Quality 列中自动更新。请看一下我在上面添加的参考。
我这样做的尝试给出了一个错误。
请指导我,谢谢。
【问题讨论】:
-
通过取消选择
lotDetailDataGridView中的值Cadbury,您将其从pieceDetailDataGridView中的可能值列表中删除。但是您仍然有一个在pieceDetailDataGridView中选择了Cadbury的单元格。这就是您看到错误的原因。您正在尝试选择一个不再在您的组合框列表中的值。在离开CellEndEdit方法处理程序之前,您必须决定如何处理此值。 -
这就是我想要的,当我从 lotDetailDataGridView 更改吉百利时,它应该会自动在pieceDetailDataGridView 上更新。新价值取代旧价值。我不知道该怎么做。请帮忙
标签: c# .net visual-studio winforms datagridview