我正在使用以下代码将一堆
DataGridViewRow
元素设置为不可见。我使用的规则是检查相关的数据源是否有一个布尔标志。如果标志为true,则显示该行,否则它将不可见。
以下代码有效,但是会消耗相当多的时间:
CurrencyManager currencyManager = (CurrencyManager)BindingContext[dataGridView.DataSource];
currencyManager.SuspendBinding();
foreach (DataGridViewRow row in dataGridView.Rows)
{
if (!objectList.list[row.Index].Selected)
{
row.Visible = false;
}
}
currencyManager.ResumeBinding();
有没有更好的解决方案?随着我需要查找的对象列表越来越长,这个过程所需时间也越来越长。我不能设置单元格范围,因为布尔值可能不是连续的。