码迷,mamicode.com
首页 > Windows程序 > 详细

Winform DataGridView 取消默认选中行

时间:2018-08-01 16:41:00      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:clear   gen   nta   grid   object   href   共享   private   必须   

困境

网上有很多解决方法,可是很多读者照做并不生效。追究其原因,问题出现在许多博主没有搞清楚DataGridView绑定与当前触发事件的关系。

复现

private void Frm_Load(object sender, EventArgs e)
{
    datagridview.AutoGenerateColumns = false;
    DataTable dataTable = new DataTable();
    for (int i = 1; i <= 7; i++)
    {
        dataTable.Columns.Add("DPN" + i.ToString());
    }
    DataRow row11 = dataTable.NewRow();
    row11["DPN1"] = "Test1";
    row11["DPN2"] = "Test1";
    row11["DPN3"] = "Test1";
    row11["DPN4"] = "Test1";
    row11["DPN5"] = "Test1";
    row11["DPN6"] = "Test1";
    row11["DPN7"] = "Test1";
    dataTable.Rows.Add(row11);
    datagridview.DataSource = dataTable;
    datagridview.ClearSelection = false;
}

使用datagridview.ClearSelection = false;是很多博客的解决办法,但是在此示例里面并不生效!!!

解决

其实很简单,使用DataBindingComplete事件即可。该事件发生在数据源绑定完成之后。

private void datagridview_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
    datagridview.ClearSelection();
}

感谢

同事 PhantomSix

声明

本文采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可,发表在CSDN和博客园,欢迎读者转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接!

Winform DataGridView 取消默认选中行

标签:clear   gen   nta   grid   object   href   共享   private   必须   

原文地址:https://www.cnblogs.com/chasingdreams2017/p/9401927.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!