0
私はC#を使用しており、チェックボックスをプログラムでWindowsフォームに追加しています。私は、作成された各チェックボックスにcheckedChangedイベントハンドラを割り当てようとしています。次のcase文でvarableチェックボックス名を使用する方法はありますか?checkedChangedイベントハンドラに変数Checkboxの名前を割り当てようとしています
CheckBox chkBox = new CheckBox();
chkBox.Location = new System.Drawing.Point(550, y2);
chkBox.Name = "CheckBox" + optno.ToString();
chkBox.Font = new Font("Arial", 10, FontStyle.Bold);
switch (optno)
{
case 1:
chkBox.Click += new System.EventHandler(this.**CheckBox1**_CheckedChanged);
break;
case 2:
chkBox.Click += new System.EventHandler(this.CheckBox2_CheckedChanged);
break;
case 3:
chkBox.Click += new System.EventHandler(this.CheckBox3_CheckedChanged);
break;
長いケースのリストを避けたいです。
あなたはおそらくあなたのハンドラを組み合わせる必要があります。または代理人の配列を作成します。 – SLaks
ハンドラメソッドはどう違っていますか? –
https://stackoverflow.com/questions/33107026/dynamic-switch-cases – Tcraft