2011-11-06 13 views
9

Visual Studio 2010を使用してC#でWindowsフォームアプリケーションを作成しています。VS2010/C#:IDEのコンボボックスのデフォルト値をどのように設定しますか?

コンボボックスがあります。 DropDownStyleを「DropDownList」に設定し、「Items」に数行追加しました。

Q:「プロパティ」エディタでSelectedItemIndexを設定する方法はありますか。コンボボックスが表示されたときに、「アイテム」コレクションの行がデフォルトとして表示されますか?

私はプログラム的に私のForm_Loadメソッドで「myComboBox.SelectedItemIndex = NNN」を設定することができます知っているが、私はMSVS IDEでそれを行うにはいくつかの方法があまりにも、おそらくあります確信しています。

アイデア?

ありがとうございます!

答えて

5

これはあなたの質問ですが、特定の項目をデフォルトとして設定したいのかどうかはわかりません。フォームをロードして、既に値が選択されています。

public Form1()メソッドに入力してください。

comboBox1.SelectedItem = "Test1"; 
//comboBox1 change to the name of 
//your combobox 
//Test1 change to the item in your list of items that you want 
//defaulted. 

私はこれがはるかに良い方法だと思います。

+4

こんにちは - ありがとうございます。残念ながら、それは私の質問で言及した "プログラム上の回避策"です。私は、デザイン時にIDEのプロパティエディタで設定できるものを探していました。 Delphi IDEでは、 "ItemIndex"プロパティを編集してComboBoxのデフォルトを設定できます。私は、MSVS IDEが同等のデザインタイム機能を持つことを期待していました。 – paulsm4

+1

残念ながら私は1つを見ませんでした。この方法は、しかし、迅速かつ簡単です:)私は本当に速く別の一見を取るでしょう。 Nothing nothing:P – Dibesjr

+0

Thnx。私はMSDNでも尋ねました - 私は解決策が見つかったら返信します:http://social.msdn.microsoft.com/Forums/en/vswpfdesigner/thread/a424deca-98f9-4b4d-8214-27421be1d6deそれ以外の場合は、私の答えは "いいえ"であるように見えます。もう一度ありがとうございます - 私はそれを感謝します:) – paulsm4

0

ない正確な事を達成することができますが、Visual Studioは、あなたが2つのことを達成することができ、それを通してそのアプリケーション設定の値を格納する方法を提供する場合を確認します。デフォルト値、最初の時間を設定し

  1. ユーザーによってフォームが開かれるまで()、ユーザーの最後の選択が保存され、ユーザー がフォームを開くと、 が自動的に反映されます。かなり良いユーザーエクスペリエンス。

ComboBoxを選択し、そのプロパティセクション(アプリケーション設定)の下で(プロパティのバインディング)を選択し、ComboBoxのアプリケーション設定が開いたら、Textプロパティを選択してアプリケーション設定を作成します。これは、最初にユーザがフォームを開いたときにデフォルトで選択された値になります。その後、ユーザが選択したものは、フォームが次に開いたときに反映されます。

0

あなたがデフォルトとして欲しいあなたのコレクションからの値のいずれかに、プロパティウィンドウでコンボボックステキストプロパティを設定することができます。

enter image description here

しかしこれはドロップダウンこと、そしてあなたのコンボボックスを編集可能にDropDownStyleを必要とします。

それはあなたに、より許容だ、とあなたはまだそれが編集不可にしたい場合は、次のようにComboBoxのためKeyPressイベントイベントを上書きすることができます。

private void comboBox_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     e.Handled = true; 
    } 
関連する問題