我有一个网格,它有6列(项目名称,最小数量,最大数量,最大AMOUT,最大金额,折扣)。
要求
当我选择最小数量时,最大数量列将禁用并且其值变为零,当我选择 min> min guner将禁用,反之亦然。当我输入最小值数量时,网格行包含第一行最大值。
您可以使用Grid的单元格验证事件。
colminimumquantity,colmaximumquantity,colminimumamount,colmaximimAnt是网格的列名称您可以将它们设置在网格属性中。
/* You can use grid's cell validating event.
ColMinimumQuantity, ColMaximumQuantity, ColMinimumAmount, ColMaximumAmount are grid's column name
you can set them in Grid Properties. */
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
if (dataGridView1.CurrentCell.OwningColumn.Name.ToUpper().ToString() == "ColMaximumQuantity")
{
dataGridView1.CurrentRow.Cells["ColMinimumQuantity"].Value = "0";
dataGridView1.CurrentRow.Cells["ColMaximummQuantity"].ReadOnly = false;
dataGridView1.CurrentRow.Cells["ColMinimummQuantity"].ReadOnly = true;
}
if (dataGridView1.CurrentCell.OwningColumn.Name.ToUpper().ToString() == "ColMaximumAmount")
{
dataGridView1.CurrentRow.Cells["ColMinimumAmount"].Value = "0";
dataGridView1.CurrentRow.Cells["ColMaximummQuantity"].ReadOnly = false;
dataGridView1.CurrentRow.Cells["ColMinimummQuantity"].ReadOnly = true;
}
if (dataGridView1.CurrentCell.OwningColumn.Name.ToUpper().ToString() == "ColMinimumAmount")
{
dataGridView1.CurrentRow.Cells["ColMaximumAmount"].Value = "0";
dataGridView1.CurrentRow.Cells["ColMiniimumAmount"].ReadOnly = false;
dataGridView1.CurrentRow.Cells["ColMaximumAmount"].ReadOnly = true;
}
}