私はさまざまなオプションのコンボボックスを持つForm1を持っています。 Form2は、ボタンクリックでForm1から開きます。フォーム上のラベルテキストを別のフォームのコンボボックスの値から設定するC#
Form2のラベルのテキストをForm1のcomboBoxの値に設定したいとします。私はVBAから来
はそう
this.label1.Text = Form1.comboBox1.Text;
を試してみました。しかし、これは動作しません。これを行う最も簡単な方法は何ですか?
私はさまざまなオプションのコンボボックスを持つForm1を持っています。 Form2は、ボタンクリックでForm1から開きます。フォーム上のラベルテキストを別のフォームのコンボボックスの値から設定するC#
Form2のラベルのテキストをForm1のcomboBoxの値に設定したいとします。私はVBAから来
はそう
this.label1.Text = Form1.comboBox1.Text;
を試してみました。しかし、これは動作しません。これを行う最も簡単な方法は何ですか?
だけForm2
のコンストラクタにコンボボックスのテキストを渡す:
public Form2(string something)
{
InitializeComponent();
this.label1.Text = something; // initialize label text
}
のForm2を開くとき:Form1がグローバルにアクセス変数ではありません
using(var form2 = new Form2(comboBox1.Text)) // pass
{
form2.ShowDialog();
}
をForm2のためにForm1のvaraibleを渡す必要がありますおそらく 'public Form2(string something):this(){label1.Text = something;}'がコンストラクタチェーン{InitializeComponent();}を避けるより良い方法です。 –
完全に働きます! –
、あなたは – BugFinder