Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何使用C#2010中的删除按钮删除无界DataGridView中的选定行和整行?_.net - Fatal编程技术网

.net 如何使用C#2010中的删除按钮删除无界DataGridView中的选定行和整行?

.net 如何使用C#2010中的删除按钮删除无界DataGridView中的选定行和整行?,.net,.net,在我的项目中,我使用的是一个无界DataGridView。在其中,我将第一行设为带有标题的CheckBoxColumn复选框。我为最终用户提供了在DataGridView中选择一行、多行或整行的功能,如果他们需要,可以将其删除。但真正的问题是,当我选择所有行并单击“删除”时,它会删除整个行,而当我选择一行时,它会执行相同的操作 下面是我的删除按钮代码 private void BtnDcDelete_Click(object sender, EventArgs e) { do {

在我的项目中,我使用的是一个无界DataGridView。在其中,我将第一行设为带有标题的CheckBoxColumn复选框。我为最终用户提供了在DataGridView中选择一行、多行或整行的功能,如果他们需要,可以将其删除。但真正的问题是,当我选择所有行并单击“删除”时,它会删除整个行,而当我选择一行时,它会执行相同的操作

下面是我的删除按钮代码

private void BtnDcDelete_Click(object sender, EventArgs e)
{
    do
    {
        foreach (DataGridViewRow row in dataGridViewEx1.Rows)
        {
            try
            {
                dataGridViewEx1.Rows.Remove(row);
            }
            catch (Exception) { }
        }
    } while (dataGridViewEx1.Rows.Count > 1);
}
试试这个:

//foreach (DataGridViewRow row in dataGridViewEx1.Rows)
foreach (DataGridViewRow row in dataGridViewEx1.SelectedRows) { 
...

永远不要接受例外。