1

我的表单中有两个 DataGridViewTextbox 列。我想将一个文本框与另一个文本框值进行比较。

请参阅此处提供的信息的图像...,

它们是蓝色的,它们是只读的......我试过了,我得到了答案

4

2 回答 2

1

try this

if (DataGridView.Rows[0].Cells["Quantity"].Value > DataGridView.Rows[0].Cells["other"].Value)
{
//do something
}
于 2013-05-28T10:48:35.587 回答
0

将您的网格附加到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;
        }
    }
}

事件 args 具有FormattedValue用户输入的新值。e.Cancel只要值无效,设置为 true 就不允许用户离开当前单元格。

您可以更改我的 ColQuantityIssues 和 ColQuantityRequired 以按名称访问它们(即 dgv.Rows[e.RowIndex].Cells["Required"]),但这应该可以。

于 2013-05-28T11:34:34.503 回答