あるフォームから別のフォームに文字列を渡す際に問題があるようです。Form1 に 2 つの listBoxes がありますが、Form2 を使用して Form1 の listBoxes に情報を渡したいと考えています。Form2には、パラメータ文字列aと文字列bを使用してForm1の関数を呼び出すbutton_Click関数があります。
private void button_Click(object sender, EventArgs e){
Form1 frm = new Form1();
frm.AddItemToListBox(txtBox1.Text,txtBox2.Text);
}
以下は、Form1 で関数 AddItemToListBox を呼び出すコードです。
上記は Form1 の AddItemToListBox 関数です。
AddItemToListBox(string a, string b){
listBox1.Items.Add(a);
listBox2.Items.Add(b);
}
ただし、これは文字列をリストボックスに追加しません。エラーメッセージなどはありません。また、2 つのパブリック文字列 STR1 と STR2 を宣言しようとしました
AddItemToListBox(string a, string b){
listBox1.Items.Add(a);
listBox2.Items.Add(b);
STR1 = a;
STR2 = b;
}
しかし、STR1とSTR2の値を表示するボタンを使用した場合。それらは ""、String.Empty になります。値を表示する MessageBox には何も表示されません。ただし、MessageBox.Show(a); を配置すると、および MessageBox.Show(b); AddItemToListBox 関数では、文字列は正しく表示されますが、リストボックスには追加されません。
これは2時間ほど私を苛立たせていました。可能であれば、そのメソッドを実際に使用してアイテムをリストボックスに追加する理由と方法を知りたいです。よろしくお願いします。