これが簡単な作業であることを願っていますが、助けが必要です。
SomeForm f = new SomeForm();
if (someStatement) // relocate pnlRight onto new form f
{
this.Controls.Remove(pnlRight);
f.Controls.Add(pnlRight);
pnlRight.Location = new Point(0, 0); // I want to place pnlRight at (0, 0) on the new form f
this.pnlRight.Visible = false;
f.Show();
}
else // hide form and relocate pnlRight onto main form
{
this.pnlRight.Location = new Point(pnlLeft.Location.X + pnlLeft.Width + 10, pnlLeft.Location.Y);
this.Controls.Add(pnlRight);
this.pnlRight.Visible = true;
frmSettings.Hide();
}
だから - pnlLeft と pnlRight の 2 つのパネルを持つメイン フォームがあります。ボタンをクリックすると (someStatement が true の場合)、pnlRight を新しく作成されたフォームに再配置する必要があります。完璧に動作します。BUT: pnlRight をメイン フォームに再配置すると、配置したい場所ではなく、pnlLeft の上の (0, 0) に配置されます。どうしたの?両方のパネルのプロパティを確認しましたが、オッズが表示されません。誰かが私にヒントを持っているかもしれません。
ベスト・デニス