场景

DataGridView怎样实现添加、删除、上移、下移一行:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102814145

在上面中应用到了获取与设置选中行行并且遇到与当前行的区分问题。

注:

博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

获取选中行

private int GetSelectedRowIndex(DataGridView dgv)
        {
            if (dgv.Rows.Count == 0)
            {
                return 0;
            }
            foreach (DataGridViewRow row in dgv.Rows)
            {
                if (row.Selected)
                {
                    return row.Index;
                }
            }
            return 0;
        }

然后就可以调用它

int selectedRowIndex = GetSelectedRowIndex(this.dataGridView_Task_ViewEdit);

设置选中的行

dataGridView_Task_ViewEdit.Rows[selectedRowIndex - 1].Selected = true;

区分CurrentRow

用SelectedRows时必须 单击该行最前面的的方格而不能点击表格里有数据的单元格。

用CurrentRow时点哪都行。

SelectedRows表示的是你在DataGridView中所选择的行,其中Count属性是表示的选择的行数
CurrentRow表示的就是你所选择的当前行,只有一行
Rows表示的是DataGridView中所有的行数

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐