1

コンボボックスとテキストボックスがあるとしましょう。

コンボボックスにはアイテムのリストが含まれているので、テキストボックスの「text」プロパティを現在のコンボボックスの選択にバインドしたいと思います。

WPFではこれを行うことができましたが、WinFormsで方法を見つけられませんでした。

方法はありますか、それともWinFormsが制限されすぎていますか?

ノート:

  • 代わりにWPFを使用できることはわかっていますが、プロジェクトはすでにWinFormsに含まれており、書き直すことは問題外です。
  • コンボボックスとテキストボックスについて質問していますが、これは他の組み合わせでもかまいません。
  • 設計時から可能な限りそれを行う方法を探しています。
4

3 に答える 3

2

コンボボックスにonSelectedIndexChangeイベントハンドラーを追加し、そこでテキストボックスフォームを変更できます。

于 2012-05-11T20:13:22.543 に答える
2

Textはい、テキスト ボックスをコンボ ボックスで選択した項目 ( ) にバインドできます。

   public partial class Form1 : Form {
      Binding binding;

      public Form1() {
         InitializeComponent();

         binding = new Binding("Text", comboBox1, "Text");
         textBox1.DataBindings.Add(binding);
      }
   }
于 2012-05-11T20:33:08.763 に答える
0

これらの行はデリゲートを作成します。デリゲートの開始は、選択したインデックスがアイテムの下で変更されたかどうかを呼び出します。その後、テキストボックス、テキストプロパティをコンボボックスから選択したアイテムのテキストに設定します:)

            TextBox txtbox = new TextBox();
            ComboBox cob = new ComboBox();
            cob.SelectedIndexChanged += new EventHandler(delegate(object sender, EventArgs e) { if (cob.SelectedIndex > -1) txtbox.Text = cob.Items[cob.SelectedIndex].ToString(); });
于 2012-05-11T20:15:11.507 に答える