ユーザーがリストボックスを右クリックしたときに、リストボックス内のすべての選択項目の選択を解除する機能があります。プロジェクトのすべてのリストボックスにこの関数を適用する方法はありますか?複数のフォームからアクセスされたC#グローバルイベント
私は別の方法ではなく、クラスを作るがありますかどうかを知り、クラスなどで機能を入れたい:これを行うには、各リストボックスのため
public class selectedListbox{
private void setSelected(ListBox details){
details.MouseDown += new System.Windows.Forms.MouseEventHandler(this.listBoxDeselectAll);
}
private void listBoxDeselectAll(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
((ListBox)sender).ClearSelected();
}
}
}
、その後:
selectedListBox h = new selectedListBox();
h.setSelected(listboxNameHere);
あなたはそれが役に立つかもしれませんListBoxから継承し、この機能を持つ新しいコントロールを作成します。 – Amy
私はあなたがform.controlsコレクションを使うことができると思いますが、私はあなたに完全な答えを与えるのに十分な経験がありません。 check msdn – NirMH
@ Inuyasha新しいコントロールを作成するための詳細を教えていただけますか?ありがとう –