0

なぜこのエラーが発生するのか混乱しています:

Comboboxアイテム:

private readonly string[] cbTexts = new string[] { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday", "(Cleare)" };

動的comboboxes:

private void comboOptions()
        {
            cmb = new ComboBox[countWaiters];
            int width = 100;
            int height = 20;
            for (int i = 0; i <= 3; ++i)
            {
                newBox = new ComboBox();         
                newBox.Text = "(Request)";          
                newBox.Size = new Size(width, height);
                newBox.Location = new Point(0, (i * height));
                cmb[i] = newBox;
                cmb[i].SelectedIndexChanged += new EventHandler(cmb_SelectedIndexChanged);
                foreach (string cbText in cbTexts)
                {
                    cmb[i].Items.Add(cbText);
                }

                pnlRequests.Controls.Add(newBox);
            }            
        }

SelectedIndexChangedのイベントcomboboxes:

void cmb_SelectedIndexChanged(object sender, EventArgs e)
        {

            ComboBox senderCmb = (ComboBox)sender;

           int row = (int)senderCmb.Tag;
           //this is where the program crashes
           //more code located here that does something
         }

エラー: 注: 一部のメソッド名はこの画像から変更されていますが、何も影響しません ここに画像の説明を入力

4

2 に答える 2

2

指定されたコードのどこにもプロパティを設定していませんTag。なぜ必要なのかわかりません。私はあなたが現在のものを手に入れたいと思っていると思いますSelectedIndex

int row = senderCmb.SelectedIndex;
于 2013-03-08T15:58:30.550 に答える
0

私の行方不明、ばかげた間違い:

cmb[i].Tag = i;
于 2013-03-08T16:01:48.440 に答える