【開発】DataBindコンボボックスに手動でリスト追加

開発ざれごとcombobox,databind,手動リスト

DataBindされてるフォーム上で、コンボボックスを追加する際、わざわざコンボの中身を、DataTableで用意してた事が以前ありました。

そんな事しなくてもええんすよね。

んで、その方法をば。

 

 


DisplayMemberとValueMemberの仕組みですので、KeyValuePairクラスを利用します。

List<KeyValuePair<string, int>> st = new List<KeyValuePair<string,int>>();
st.Add(new KeyValuePair<string,int>( "上部",0));
st.Add(new KeyValuePair<string,int>( "左部",1));
st.Add(new KeyValuePair<string,int>( "右部",2));
st.Add(new KeyValuePair<string,int>( "下部",3));
cbToolbarPos.DisplayMember = "Key";
cbToolbarPos.ValueMember = "Value";
cbToolbarPos.DataSource = st;
cbToolbarPos.SelectedValue = m_Option.Rows[0]["ToolbarPos"];
  

こんな感じです。

ジェネリックでListを作り、そこにガツガツ入れていきます。

もちろん、databindによる設定を再度指定しなおさないといけないので、最後にselectedvalueにて選択してます。

後は、プロパティのdatabindings/selectedvalueにて、お好きなDataBind先を選択しておけばOKです。

開発ざれごとcombobox,databind,手動リスト

Posted by nabe