摘要:多視窗間互相傳值
我指的多視窗,是指三個視窗以上(包含三個)。
其實與一般的傳值方法並無太大的不同,在架構上多琢磨一下就可以。
我假設f1為主要的Main frame,所有的frame都會把值傳過去。
而所有的frame也可以跟f1要值。
線的連接,代表哪個frame中有控制項可以開啟該frame。
(ex: click a button in f1 will show f2.)
今天如果f4要把直傳回f1時,程式寫法如下
//in f4
public Form4(Form3 Parentform)
{
InitializeComponent();
this.Tag = Parentform;
}
private void button1_Click(object sender, EventArgs e)
{
((Form3)this.Tag).Function1(textBox1.Text);
Close();
}
//In f3 宣告一個Fun可以把直傳回f1
public Form3(Form1 Parentform)
{
InitializeComponent();
this.Tag = Parentform;
}
public void Function1(string fn) {
((Form1)this.Tag).FunFileName = fn;
}
其實充其量就是個架構罷了。我有看到MDI,這可能需要花點時間來比較研究一下哪一個比就好就是了。
