私は、GlobalDataクラスから「データ変更」通知を受け取るという基本的な概念で車輪を回しています。
単一のコントロール(textBox1)を備えたForm1があり、番号が変更されたときに、対応するプロパティを「グローバル変数」クラスに設定します。
ここで、プロパティが設定されたら、Form2がサブスクライブできるイベントを発生させ、それに応じてインジケーターを更新します。
基本的な構造は次のとおりです。Form1にはtextBox1とbutton1があり、Form2にはtextBox2があり、GlobalClassにはtestValueがあります。
Form1のもの...
public partial class Form1 : Form {
public GlobalClass myGlobals= new GlobalClass();
private void button1_Click(object sender, EventArgs e) {
myGlobals.testValue= Convert.ToInt32(textBox1.Text);
}
}
GlobalClassのもの...
public class GlobalClass{
private int mynum;
public int testValue{
get{
return mynum;}
set{
mynum = value;
// NEED TO RAISE MY 'HEY YOUR testVALUE HAS CHANGED!!' EVENT HERE?
}
}
}
Form2のもの
public partial class Form2 : Form {
public GlobalClass myGlobals2;
//NEED TO RECEIVE NOTIFICATION THAT myGlobals2.testValue HAS BEEN UPDATED?
//THEN I CAN DO textBox2.Text = myGlobals2.testValue.ToString();
}
よろしくお願いします。