C#DataGridView单元格错误行绘制前文本检测

C#DataGridView单元格错误行绘制前文本检测,c#,winforms,validation,datagridview,C#,Winforms,Validation,Datagridview,我有一个datagridview,在其中粘贴从excel文件复制的行。 填充行后,我将验证CellFormattingEvent上的每个单元格 switch (e.ColumnIndex) { case 10: if (dgv.Rows[e.RowIndex].Cells[e.ColumnIndex] == null || dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString().Trim() == "") { dgv.

我有一个datagridview,在其中粘贴从excel文件复制的行。 填充行后,我将验证CellFormattingEvent上的每个单元格

switch (e.ColumnIndex)
{
  case 10:
  if (dgv.Rows[e.RowIndex].Cells[e.ColumnIndex] == null || dgv.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString().Trim() == "")
  {
  dgv.Rows[e.RowIndex].Cells[e.ColumnIndex - 1].ErrorText = "Product code not found!";
  }
  break;
}
我在这里的目的是隐藏除包含按钮按下错误的行之外的所有行。 现在我的问题是,我无法设置数据网格中物理上看不到的行的ErrorText


我的问题是:除了在添加数据网格时以编程方式滚动数据网格之外,还有什么方法可以验证我看不到的单元格吗?

绑定或未绑定模式?数据绑定到对象列表之前,有一个问题阻止我做最简单的事情来解决这个问题,那就是对RowsAdded事件进行验证。修复了此问题,现在它可以在行上进行验证。很好,但更好的方法是在对象中实现
IDataErrorInfo
,而忽略具体的控制事件。它适用于任何专业网格组件,也适用于单项数据绑定。绑定或未绑定模式?绑定到对象列表的数据,以前有一个问题阻止我做最简单的事情来解决这个问题,那就是在RowsAdded事件上进行验证。修复了此问题,现在它可以在行上进行验证。很好,但更好的方法是在对象中实现
IDataErrorInfo
,而忽略具体的控制事件。它适用于任何专业网格组件,以及单个项数据绑定。