次のコードを使用して、一連の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();
誰かがより良い解決策を持っていますか? 通過しなければならないオブジェクトのリストが長くなればなるほど、当然、このプロセスにかかる時間も長くなります。ブール値が連続していない可能性があるため、セルの範囲を設定できません。