コンボボックスに表示テキストとは別に値を持たせることってできますか?

解決


たまき  2009-02-27 08:13:23  No: 141576

HTMLのプルダウンだと、たとえば、
<SELECT name="sel">
    <OPTION VALUE="A">項目A</OPTION>
    <OPTION VALUE="B">項目B</OPTION>
</SELECT>
のように、プルダウン内に表示するテキスト(上の例だと"項目A"・"項目B")とは別に、
値(上の例だと"A"・"B")というものを設定することができるのですが、
同じようなことをVBのコンボボックスでもできるでしょうか?
要はコンボボックスで選択したテキスト(上の例だと"項目A"・"項目B")を取得したいのではなくて、
それにひも付く値(上の例だと"A"・"B")を取得したいのです。
どうぞよろしくお願いします。
ちなみにVB2008です。


TAMA  2009-02-27 09:14:43  No: 141577

昔からのプログラマならばインデックスを使うと思う。


太郎冠者  2009-02-27 11:09:35  No: 141578

ValueMemberプロパティを使いましょう。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.listcontrol.valuemember(VS.80).aspx


たまき  2009-02-27 19:19:11  No: 141579

太郎冠者さま、ありがとうございました。
ValueMemberで検索して、方法が分かりました。
参考サイト:http://www.r-nakai.com/archives/29
概要
・DataTableにテキストと値のテーブルを用意する。
・コンボボックスのDataSourceを上記DataTableにし、
  コンボボックスのDisplayMemberにDataTableのテキストの列名を、
  コンボボックスのValueMemberにDataTableの値の列名を設定する。
これで、コンボボックスのSelectedValueより、選択したコンボボックスの値を取得することができることが分かりました。
これにて、このスレッドをクローズさせて頂きます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加