1

私はcombobox1とcomboox2を持っており、combobox1の要素はA、B、Cとcombobox21,2,3,4,5,6です。

A related 1,2,3 and B related 3,4 and C related 5,6.

When I choose "A" I want to see just 1,2,3 ; when select "B" just 3,4 etc.

どうすれば想像できますか?

選択したインデックスを変更してやろうとしましたが、しませんでした

4

1 に答える 1

2

これを試して、次のようなクラスを作成してください。

public class Data
    {
        public string Name { get; set; }
        public List<int> Values { get; set; }
    }

次に、フォームに次のような変数があります。

private List<Data> data = new List<Data>
        {
            new Data{Name="A",Values=new List<int>{1,2,3}},
            new Data{Name="B",Values=new List<int>{4,5}},
            new Data{Name="C",Values=new List<int>{6,7}},
        };

次に、フォームのコンストラクターで:

comboBox1.DisplayMember = "Name";
            comboBox1.DataSource = data;            
            comboBox1.SelectedIndex = 0;

次に、combobox1 の selectedindex changed イベントで次のようにします。

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            int index = comboBox1.SelectedIndex;
            comboBox2.DataSource = data[index].Values;
        }

それはうまくいくはずです。

于 2012-07-24T12:14:36.397 に答える