Form1で割り当てる文字列変数SuppCodeがあります。この変数をForm2のSwitchステートメントで使用したいと思います。使ってみましpublic string SuppCode;
たが、まだThe name 'Switch' does not exist in the current context error
スイッチが入っています。SuppCode Form2を使用できるようにするには、何を変更する必要がありますか?
1 に答える
1
Form1はForm2の所有者ですか?つまり、instanceOfForm2.Show(instanceOfForm1);を使用しましたか。またはinstanceOfForm2.ShowDialog(instanceOfForm1); Form2を表示するには?そうである場合は、次のことができます。
string s = ((Form1)this.Owner).SuppCode;
Form2から変数にアクセスするには
編集: メソッドを使用して表示されたときに、フォームに所有者が設定されています:
Form1 form1 = new Form1();
Form2 form2 = new Form2()
form2.Show(form1);
//or
form2.ShowDialog(form1);
次に、form2のOwnerプロパティがform1に設定されます。
Form2で独自のプロパティを作成して、form1を参照することもできます。
class Form2
{
public Form1 MyFormRef{get;set;}
public Form2(){/*...*/}
// or:
public Form2(Form1 formref)
{
this.MyFormRef = formref;
}
private string getSuppCode()
{
if(this.MyFormRef!=null)return this.MyFormRef.SuppCode;
else return null;
}
}
使用する:
Form1 form1 = new Form1();
Form2 form2 = new Form2();
form2.MyFormRef = form1;
また:
Form1 form1 = new Form1();
Form2 form2 = new Form2(form1);
于 2013-01-23T07:28:26.947 に答える