我正在使用以下代码将一堆DataGridViewRow
元素设置为不可见。我使用的规则是检查关联的数据源是否有布尔标志。如果标志为真,则将显示该行。如果没有,它将是不可见的。
以下代码有效;但是,它会消耗相当多的时间:
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();
有没有人有更好的解决方案?我必须经过的对象列表越长,这个过程自然需要的时间就越长。我无法设置单元格范围,因为布尔值可能不连续。