简体   繁体   English

在datagridview中删除行的列表

[英]List of deleting rows in datagridview

I got a DataGridView which just allows user to delete rows (with no direct editing or adding on DataGridView). 我有一个DataGridView,它允许用户删除行(没有直接编辑或添加DataGridView)。 I will update my database information whenever user deletes rows on DataGridView (there is no binding among DB and gridview). 每当用户删除DataGridView上的行时,我都会更新我的数据库信息(DB和gridview之间没有绑定)。

I have no problem to have deleting row when user is deleting only one row using DeletingRow event like below: 当用户使用DeletingRow事件删除一行时,我没有问题删除行,如下所示:

private void dataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
{
    DataGridViewRow row = e.Row;     //only single row
}

However i could not capture list of all rows when user selects multiple rows and delete them. 但是,当用户选择行并删除它们时,我无法捕获所有行的列表。 Above event only called once for first row only. 以上事件仅针对第一行调用一次。 In order to handle this case i did set dataGridView1.MultiSelect = false; 为了处理这种情况,我确实设置了dataGridView1.MultiSelect = false; however this is a workaround! 不过这是一种解决方法!
So how can i have list of all selected rows which user is deleting, currently? 那么我怎样才能拥有用户正在删除的所有选定行的列表?

All selected rows will be available at dataGridView1.SelectedRows 所有选定的行都将在dataGridView1.SelectedRows可用
so you can do something like: 所以你可以这样做:

    void dataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
    {
        foreach (DataGridViewRow row in this.dataGridView1.SelectedRows)
        {
            this.HandleRowDeletion(row);
        }
    }

Use dataGridView1.SelectedRows to get a collection ( DataGridViewRowCollection type) that contains all the rows selected. 使用dataGridView1.SelectedRows获取包含所有选定行的集合( DataGridViewRowCollection类型)。 Same works for columns ( dataGridView1.SelectedColumns ) and cells ( dataGridView1.SelectedCells ). 列( dataGridView1.SelectedColumns )和单元格( dataGridView1.SelectedCells )也是如此。

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.selectedrows.aspx http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.selectedrows.aspx

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM