• ベストアンサー

コンボボックスを読み取り専用にするには

VB2005です。 コンボボックスを読み取り専用にしたいのですが、 TextBoxにはReadOnly=Trueにすれば読み取り専用になりますが ComboBoxを読み取り専用にしたい場合は、どうしたらよいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • NYOI
  • ベストアンサー率58% (56/96)
回答No.2

「ある値以外を選択できないようにしたい」というだけなら、 一度コンボボックスのItemをクリアーして、選択させたい値のみをAddしてみるとか。 ComboBox1.Items.Clear() ComboBox1.Items.Add("aaa") ComboBox1.SelectedIndex = 0

rabu_chihaha
質問者

お礼

ありがとうございます。 その値のみ再設定すれば良いのですね。

その他の回答 (4)

  • rics
  • ベストアンサー率0% (0/1)
回答No.5

すみません、Visibleの間違いです(^^;) それと質問の主旨(コンボを読み取り専用に)とは外れてしまってますね。すみません。

rabu_chihaha
質問者

お礼

ありがとうございます。 その方法でも良いですね。 再選択できないのだから、ラベルに値をいれても いいんですね。 参考にいたします。

  • rics
  • ベストアンサー率0% (0/1)
回答No.4

それならコンボを使わないとだめですか? 表示制御が必要になりますが、コンボの上にラベルを重ねて表示させてEnableを切り替えたらどうでしょう? 私は修正時の固定項目は、ラベルを使うようにしてます。

  • KG_
  • ベストアンサー率62% (34/54)
回答No.3

DropDownStyleプロパティを「DropDownList」にするとか。

rabu_chihaha
質問者

お礼

現在もテキスト入力を受け付けないDropDownListになっているのですが、 リスト内でも場合によっては今選択されている値から変更されたくないのです。

回答No.1

デフォルトでは存在しないので 作って使う! (英語わかんなくてもソース読めればOK!C#だがVB.NETでもほぼ一緒だろう) http://www.codeproject.com/cs/combobox/csReadonlyComboBox.asp #でもどんな局面でこんなのが必要なのかよくわからん。 #もしよければ補足で説明してくれないか?

rabu_chihaha
質問者

お礼

C#はわからないのですが、やってみます。 ありがとうございました。

rabu_chihaha
質問者

補足

早速の回答、ありがとうございます。 新規登録の場合は、コンボボックスより選択なのですが、 変更登録の場合は、その値は変更したくないのです。 ですが、Enable=falseにしてしまうと、 グレーアウトされてしまって見づらいのです。 なので、読み取り専用にしたかったのです。

関連するQ&A

専門家に質問してみよう