ListBox 内のすべての項目を選択しようとしており、この目的のためにこの拡張メソッドを作成しました。
public static void SetSelectedAllItems(this ListBox ctl)
{
for (int i = 0; i < ctl.Items.Count; i++)
{
ctl.SetSelected(i, true);
}
}
問題は、ListBox に多数のアイテムがある場合、このタスクを完了するのに時間がかかり、ListBox が自動的に下にスクロールしてアイテムを選択する様子を確認できることです。
タスクがより速く終了するように、コントロールの更新を一時的に一時停止する方法はありますか? 私は使用してみました:
ctl.SuspendLayout();
for (int i = 0; i < ctl.Items.Count; i++)
...
ctl.ResumeLayout();
しかし、それは何もしないようです。