我正在为书店开发Windows窗体应用程序。在此应用程序中,有一个datagridview可以选择要出售的书籍。如果库存中没有可用的物品,我需要清除当前行值,那么我该怎么做。我尝试过了
dataGridView1.Rows.Clear();
但是这清除了整个datagridview。但是当我单击“确定”消息时,我只需要清除当前行。
答案 0 :(得分:0)
您将需要在数据网格中指定要删除的行。您可以通过选择所选行的“索引”来完成此操作。
dataGrid.Rows[index].Selected = true;
或者您可以执行以下操作:
dataGrid.SelectedRows.Clear();
foreach(DataGridViewRow row in dataGrid.Rows)
{
if(YOUR CONDITION)
row.Selected = true;
}
答案 1 :(得分:0)
我总是使用removeat,首先检查以确保选择了某些内容,然后在传递索引的同时执行removeat。
if(dataGridView1.CurrentRow.Index > -1 && !dataGridView1.Rows[dataGridView1.CurrentRow.Index].IsNewRow)
dataGridView1.Rows.RemoveAt(dataGridView1.CurrentRow.Index);
编辑:在AllowUsersToAddRows为True的情况下添加了对IsNewRow的检查,如果这是所选行,则会抛出异常。