我在 Windows 窗体中有一个 DataGridView,它有 2 列,最后一列将包含数据包的名称,关键是这个名称永远不必重复。
我尝试使用 CellValidating 事件使用此代码
string value = Convert.ToString(dgvTiendas.Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
int cellIndex = e.RowIndex;
if(cellIndex == 1)
{
foreach (DataGridViewRow rw in dgvTiendas.Rows)
{
if (cellIndex == rw.Index)
{
return;
}
else
{
string valorRow = Convert.ToString(rw.Cells["ContenedorCodigoBarras"].Value);
if (value == valorRow)
{
MessageBox.Show("The container is already used");
dgvTiendas.Rows[e.RowIndex].ErrorText = "Contenedor ya utilizado";
e.Cancel = true;
}
else
{
e.Cancel = false;
}
}
}
}
当我运行应用程序并编写容器的名称时,它已被验证,但似乎验证了当前单元格,因为“错误文本”出现在 RowHeader 上。
请帮助我有几个星期的时间。