MainForm.csという名前のWindowsフォームと、それぞれUserControlRed.csとUserControlBlue.csという2つのユーザーコントロールがあります。ucrであるUserControlRedのオブジェクトが作成され、MainFormpanel1.Controls.Add(ucr);
のデフォルトコンストラクターを使用してMainFormのpanel1に追加されます。
次に、次のようなUIがあります:MainForm
注: ucbであるUserControlBlueのインスタンスは、UserControlRedのクリックボタンイベントを使用して作成されます。次のようにコーディングします。
private void CreateUCBbtn_Click(object sender, EventArgs e)
{
MainForm f1 = new MainForm();
f1 = (MainForm)this.Parent.Parent;
f1.AddUCBlueIntoPanel2();
}
ここで、ユーザーが[UCBラベルの変更]ボタンをクリックした後、UserControlBlueのラベルは、UserControlRedのテキストボックスに入力された内容に応じて変更されます。だから、私はここで2つの質問があります:
- 上記の私のメモに関して、このようにそれを行うのは安全ですか?
- テキストボックスの値をUserControlRedからUserControlBlueのラベルに渡すための最良の方法は何ですか?
別の注意:私はまだOOP、特にC#とwinformsの初心者です。たぶん誰かが私に精通するのに良いサイトを提案することができますか?