DataGridView 设置行不可见时,与货币管理器的位置关联的行不能设置为不可见

在DataGridView中,选择行无法隐藏的问题!当直接用程序中的 DataGridView.SelectRows[0].Visible = false; 程序会报出一个异常!

异常错误如下:System.InvalidOperationException: 与货币管理器的位置关联的行不能设置为不可见。

 

    在这里可以看出明显是数据绑定问题,就是货币管理器的问题:这下问题好解决了;

CurrencyManager:货币管理类,通过如下方法可以获取。在CurrencyManager中有2个方法

SuspendBinding(),ResumeBinding()(详细资料可以查询MSDN)

 

CurrencyManager cm = (CurrencyManager)BindingContext[DataGirdView.Source];

cm.SuspendBinding(); 挂起数据绑定

.........

DataGridView.SelectedRows[0].Visible = false;

.........

cm.ResumeBinding(); 恢复数据绑定

posted @ 2012-03-01 15:07  园封记忆  阅读(1669)  评论(0编辑  收藏  举报