C#のデータソースにバインドされていないコンボボックスを使用しています。
cmbBox.Items.Add("apple");
cmbBox.Items.Add("orange");
cmbBox.Items.Add("banana");
SelectedIndex を最終的に追加された「バナナ」に設定したいのですが、cmbBox.SelectedIndex = cmbBox.Items.count -1; は使用できません。コンボボックスがソートされているので!
ヒントはありますか?
ドキュメントを参照した後、私はそれを理解しました。私がすべきことは、cmbBox.Items.Add("something")ステートメントの戻り値をキャプチャし、cmbBox.SelectedIndexとして設定することだけです
nReturn = cmbBox.Items.Add("first");
...
nReturn = cmbBox.Items.Add("last");
cmbBox.SelectedIndex = nReturn;
これが誰かに役立つことを願っています。
以下は私のために働く
ComboBox cb = new ComboBox();
cb.Sorted = true;
cb.SelectedIndex = cb.Items.Add("apple");
cb.SelectedIndex = cb.Items.Add("orange");
cb.SelectedIndex = cb.Items.Add("banana");
最後の行が選択された後index = 1、selected item = banana
それよりもさらに簡単です。リストはゼロベースで、3 つの項目を追加したため、この場合のリストへのインデックスは「2」です。したがって、リストに追加されたアイテムの数を数えて、1 を引きます。3 つのアイテムから 1 を引く = 2.最後に追加されたアイテムの selectedindex は 2 です。