我想允許用戶使用ColorDialog
爲我的程序選擇背景顏色,但由於我的標籤文本顏色爲黑色,因此我想讓用戶無法從顏色對話框中選擇黑色以便顏色不會與我的標籤文字顏色重疊。有什麼辦法可以做到嗎?我也想過,如果用戶選擇了黑色帶來了一個錯誤信息,如下圖所示,但顏色對話框出現後,我再次選擇的顏色不會成爲我的窗體的背景色從顏色對話框中禁用顏色
if (color.ShowDialog() == DialogResult.OK)
{
if(color.Color == Color.Black)
{
MessageBox.Show("Color cannot be black", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
color.ShowDialog();
}
else
{
BackColor = color.Color;
backColor = color.Color;
}
}
聽起來像'while',直到選擇了正確的'顏色'。 – Sinatr
當您選擇黑色背景色時,您是否考慮切換爲光標文字顏色,而不是僅僅告訴用戶他們的選擇錯誤? –
讓用戶爲表單選擇「BackColor」和「ForeColor」。這樣他們可以選擇他們想要的顏色組合。 –