c#中的DataGridView文本框单元格验证
本文关键字:单元格 验证 文本 中的 DataGridView | 更新日期: 2023-09-27 18:15:36
我有两个DataGridViewTextbox列在我的表单。我想比较一个文本框和另一个文本框的值。
查看图片信息在那里…,
是蓝色的,它们是只读的......我试了,我得到了答案
try this
if (DataGridView.Rows[0].Cells["Quantity"].Value > DataGridView.Rows[0].Cells["other"].Value)
{
//do something
}
将您的网格添加到CellValidating
事件:
private void GridCellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (e.ColumnIndex == ColQuantityIssues.Index) // Quantity Issues TextBox value has changed
{
int quantityIssued = 0;
if (!Int32.TryParse(e.FormattedValue.ToString(), out quantityRequired)) //value is not a valid number
{
e.Cancel = true;
}
int quantityRequired = Int32.Parse(dgv.Rows[e.RowIndex].Cells[ColQuantityRequired.Index].Value.ToString());
if (quantityRequired < quantityIssued)
{
e.Cancel = true;
}
}
}
事件参数有FormattedValue
,这是用户输入的新值。设置e.Cancel
为true将不允许用户离开当前单元格,只要值是无效的。
你可以改变我的ColQuantityIssues和ColQuantityRequired访问他们的名称(即dgv.Rows[e.RowIndex]. cells ["Required"]),但这应该工作