ColorDialog
から返された色の値を別のフォームに割り当てようとしています。C#でColorDialog.Colorを別のフォームに割り当てる方法はありますか?
フォーム1は、 '配置順序'(コントロールの束を含む新しいフォームを作成)と '色の選択'(配置順序フォームの色を変更できるようにする)の2つのボタンで構成されます。したがって、Place OrderとSelect Colorを同時に開くことはできません。
したがって、私は何らかの形でPlace OrderフォームのBackColor
プロパティを参照して、ColorDialog.Color
をPlace Orderフォームに割り当てることができるように2つのボタンを持つフォームにする必要があります。
Form1のコード:
private void SelectColor_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
string color = Convert.ToString(colorDialog1.Color);
MessageBox.Show(color);
this.BackColor = colorDialog1.Color; // BackColor is only accessible for this form
}
}
を、 Form1のみを表示し、Form2はどこにロードしますか? –
実際の質問は、「注文の注文」フォームの「色の選択」ボタンがなぜではないのですか?このフォームに直接影響することを考慮すると、物理的にそのフォームに配置されていないことはあまり意味がありません。これにより、選択した色を示す変数または「Place Order」フォームのインスタンスをメモリに保持する必要がないため、作業が大幅に簡単になります。 –