• ベストアンサー

C#でJavaのComboBoxModelのような機能

milletjelの回答

  • ベストアンサー
  • milletjel
  • ベストアンサー率100% (1/1)
回答No.1

JAVAはさっぱり分かりませんが >Dictionaryクラスみたいなやつをそのままコンボボックスに >設定するようなものがあって、コンボボックスで選ばれた >キーをもとに、その要素を返すような感じのものなど…。 DisplayMemberとValueMemberを使用してみるのは如何でしょうか? (さんぷる) const DISPMEMBER = "Disp" const VALUEMEMBER = "Value" private void SetCombo() {  DataTable dt = new DataTable();  DataRow dr = null;  dt.Columns.Add(DISPMEMBER);  dt.Columns.Add(VALUEMEMBER);  dr = dt.NewRow();  dr[DISPMEMBER] = "りんご";  dr[VALUEMEMBER] = "真っ赤でおいしいよ!";  dt.Rows.Add(dr);  dr = dt.NewRow();  dr[DISPMEMBER] = "みかん";  dr[VALUEMEMBER] = "酸っぱくておいしいよ!";  dt.Rows.Add(dr);  dr = dt.NewRow();  dr[DISPMEMBER] = "ばなな";  dr[VALUEMEMBER] = "遠足のお供に!";  dt.Rows.Add(dr);  comboBox.DataSource = dt;  comboBox.DisplayMember = DISPMEMBER;  comboBox.ValueMember = VALUEMEMBER; } private void comboBox_SelectedIndexChanged() {  textBox.Text = comboBox.SelectedValue.ToString(); }

参考URL:
http://dobon.net/vb/dotnet/control/tbdisplaymember.html
tatapata
質問者

お礼

milletjelさん、ありがとうございました。 教えていただいた方法で、なんとか実現できそうです。 Javaのクラスとは、少し違っていました^^; 申し訳ありません。 また何かありましたら、宜しくお願い致します。

関連するQ&A

  • Accessレポートでコンボボックスが動かない

    Access2010のレポートでコンボボックスを使いたいのですが、コンボボックスが正しく表示されず困っています。 表示されないというのは、コンボボックスのリストを選択する逆三角形が表示されず、またリストも全く表示されません。つまりテキストボックスのように空のの四角い箱が表示されてしまいます。 表示したいリストはあるテーブルから引っ張っているのですが、全く同じことをリストボックスでやろうとするとすべての項目がうまく表示できることは確認しました。 またフォームの方ではコンボボックスをから項目が選択できることも確認できています。 レポートではコンボボックスが使えないような仕様になっているのでしょうか? お分かりになる方教えていただけますでしょうか?

  • ExcelVBA コンボボックスに入力があったらリンクしてテキストボックスを更新したい

    フォームで入力画面をつくっています。 あるコンボボックスのリストから項目が選択されたら、一覧からリンクさせてテキストボックスの内容を更新がしたいのです。 例えば「社員コード」のコンボボックスで「3」が選択されたら、「社員名」のテキストボックスに別シートに作成してある社員一覧から「太郎」が表示されるというようにです。 セルA1とコンボボックスをリンクさせ、セルB1にVLOOKUP(A1,一覧,2)で一覧から名前を抽出しました。コンボボックスのChangeイベントでB1の内容をテキストボックスへ送っているのですが、カーソルを別の項目へ移動するまではテキストボックスの内容が更新されません。 コンボボックスのリストを選択した時点でテキストボックスを更新する方法はないでしょうか?

  • C#のcomoboboxのアイテム選択直後にcomboboxウィンドウに表示される文字を変更するには?

    お世話になります。 C#で開発をしております。 comboboxでアイテムを選択直後にコンボボックスのテキストウィンドウに表示される文字を変更したいのですが、どのようにすれば変更できるか教えていただけないでしょうか? SelectedIndexChangedイベントや、TextUpdateイベント内で、 Text = "kk"; とすれば、どの項目を選択しても、kkと表示されると思ったのですが、 選択項目が表示されてしまいます。 2日悩んでいます。 宜しくお願い致します。

  • コンボボックスで選択実行後、次を選択

    いつもお世話になっていますm(__)m オフィス系で回答を得られなかったため あちらを削除してこちらに移動してきました。 アクセス2000で在庫管理・発注書フォームを作っているアクセス初心者です。 発注書フォーム内で サブフォームの発注明細に入力するため、 メインフォームで連動するコンボで、絞込みをしながら商品を選択 (大項目・中項目・小項目と3つのコンボで商品を絞込み)すると サブフォーム内のコンボボックスに小項目まで絞り込まれた商品数点が表示され、(4つめの絞込み) そこで選択すると、 見た目一行の状態で(1レコード)、 IDや単価などの詳細がそれぞれのテキストボックスに表示、 数量を選択するとこの商品の小計金額を表示するという形になっています。(意味が伝わるでしょうか。。?^^;) 最後の項目まで行き、enterキーを押すと 次の新規レコード(2行目)に移動するのですが そこで、大項目のコンボボックスから選択しようとすると 最初のレコード(1行目)に戻ってしまいます。 理想としては商品を選択し、数量など最終項目まで入力してenterキーを押すと、 次の行(次のレコード)に移動すると同時に メインフォームのコンボボックスが空白の状態になって また再度選択したものが2個目のレコードに反映される。。 という形にしたいのですが どうもうまくいきません。 説明がうまくできなくて恐縮ですが どなたかご教授のほどよろしくおねがいします。。

  • ACCESSコンボボックスの初歩的な質問ですが…

    初歩的な質問ですいません。最近ACCESSを始めたのですがわからないことがあったので教えてください。 入力フォームを使ってテーブルにデータを入力しようとしています。 そこでコンボボックスを3つ利用して項目を選択して入力する方法を考えました。 ただ、コンボボックス1である項目を選択したらコンボボックス2でそれに対応した項目しか表示されないようにしたら 入力ミスを防げると思ったのですがこれを実現するにはどのような手順を踏めばいいでしょうか? 更に予定としてはコンボボックス2で選んだ項目によってコンボボックス3で選択できる項目も絞り出したいと思っています。 要するに教えてgooの質問をするときのカテゴリ選択みたいにしたいのです。 よろしくお願いします。

  • ACCESSとタブ機能

    こんにちわ 初心者なのですが、宜しくお願いします ちなみに環境はOS:Xp・ACCESS2000です。 コンボボックスやテキストボックスなどを使って色んな項目を表示させているのですが、 1つ「住所」のコンボボックスの所だけ、タブキーで移動すると表示されているデータが消えてしまいます。(あくまで画面上だけでですが。) これはテーブルのフィールドサイズを多くとりすぎてコンボボックスの幅に入りきらず、タブキーでその住所のところに移動した時、勝手に改行されて見えなくなっているのかな・・・と、思ったのですが、フィールドサイズを小さくしても変わりませんでした。 原因としてどういう可能性があるのか、教えていただければ嬉しいです。

  • コンボボックスからテキストボックスに連続して値を出したい

    エクセルVBAのユーザーフォームで、コンボボックスで選択したものをコマンドボタンを押すことで、同じフォーム上のテキストボックスに表示するところまではできたのですが、同じテキストボックスに追記する形でコンボボックスで選択したものを表示したいのですが、可能でしょうか。テキストボックスは複数行表示できるようにプロパティのMultiLineはTlueに設定することはしたのですが、2回目以降コンボボックスで選択した後コマンドボタンを押してもそのまま上書きするようなコードしかわかりません。 テキストボックスに、20回目まで選択項目を追加表示し、最後にはエクセルのシートにそのデータをコピーしたいのです。果たして、そのようなことは可能でしょうか。可能であればどのように記述すればよいのでしょうか。ぜひ諸先輩方のお知恵をお貸しください。よろしくお願いします。

  • コンボボックスの設定について

    コンボボックスの設定について Access2000でプログラムを作っているところで質問です。 とあるコンボボックスで項目を選択すると、そこに連動した形で他のフィールドにも 項目が表示されるようになっています。もちろんコンボボックスからは自由に項目を 選べるようになっています。 今回は、そのコンボボックスの項目表示を固定化して他の項目を選べないように改修を しています。現在表示されている項目以外、コンボボックスをクリックしてもボックス 内に表示されないようにする方法をご存知の方、お知恵をお借りしたいと思います。

  • Accessの選択クエリの選択を切り替えたい

    Accessで、フォームにコンボボックスとサブフォームを作成してコンボボックスで選択したテキストをキーワードにサブフォームに選択クエリを表示させようと考えています。 コンボボックスの項目は、値集合ソースでテーブルを設定して、選択された項目は、my_Text = Me.コンボ1.Textで取得して クエリのSQL文を変更すればいいのかなぁ?って想像しています。 でも、サブフォームに設定したクエリのSQL文の変更の仕方が解りません。どなたか?詳しい方いらっしゃいましたら教えて頂けないでしょうか?宜しくお願い致します。

  • C# DataGridView特定セルの入力フォーム変更について

    C# DataGridView特定セルの入力フォーム変更について C# DataGridViewについての質問です。 DataGridViewで1列目のコンボボックスを選択した値によって、その行のみ 2列目の入力フォームを変更したいのですが、その様なことは可能でしょうか? 例.1行目1列目コンボボックス「a」選択時、1行目2列目コンボボックス表示   2行目1列目コンボボックス「b」選択時、2行目2列目テキストボックス表示   3行目1列目コンボボックス「c」選択時、3行目2列目チェックボックス表示 列全体の入力フォームを変更する処理なら分かるのですが、特定のセルのみ変更する 方法が分かりません。 もし可能であれば実現方法も教えて頂けると非常に助かります。 宜しくお願いします。