我从另一个表中插入Datagridview中的几条记录,我想为我插入的每条记录调用CellValidating事件。请帮帮我。
这是我的代码
m_Sqlstr = "Select Distinct RFID, Prod_Code, Lot_No From ScanStk Where BatchNo = '" & strBatchno & "' "
m_SqlCmd = New SqlCommand(m_Sqlstr, Con)
Con.Open()
RFIDReader = m_SqlCmd.ExecuteReader(CommandBehavior.CloseConnection)
With m_BindingsrcDetail
While RFIDReader.Read
.AddNew()
.Current("SR") = m_BindingsrcDetail.Count
.Current("LOT_NO") = RFIDReader("LOT_NO").ToString.Trim
.Current("PROD_CODE") = RFIDReader("PROD_CODE").ToString
.Current("QUANTITY") = 1
GrdDetails.BeginEdit(False)
GrdDetails.CurrentRow.Cells("Prod_code").Value = RFIDReader("PROD_CODE").ToString
GrdDetails.EndEdit()
End While
End With
grddetails是网格的名称, m_BindingsrcDetail是grdDetails的数据源
根据This,您应该能够使用BeginEdit和EndEdit强制验证触发器。但它没有发生。
我在细胞验证中获取产品描述,MRP和其他细节。所以有必要打电话给它。
答案 0 :(得分:6)
您必须更改当前单元格,然后返回到它。试一试。您可能必须更改它,因为它尚未经过测试。
BeginEdit();
DataGridViewCell currentCell = GrdDetails.CurrentRow.Cells("Prod_code");
EndEdit();
CurrentCell = null;
CurrentCell = currentCell;