我想disable
整個Form
但仍然保持每個這樣的Form
像文本框,按鈕等元素看起來像enabled
。禁用窗體,但保持其每個元素看起來像啓用
所以,我想阻止對這些元素的用戶交互,但保留它的標準看,沒有變灰等
可以在一種自動的方式或一個完成只需要手動處理的EnabledChanged
事件每個受影響的控件?
我想disable
整個Form
但仍然保持每個這樣的Form
像文本框,按鈕等元素看起來像enabled
。禁用窗體,但保持其每個元素看起來像啓用
所以,我想阻止對這些元素的用戶交互,但保留它的標準看,沒有變灰等
可以在一種自動的方式或一個完成只需要手動處理的EnabledChanged
事件每個受影響的控件?
對於所有控件,「backcolor」屬性默認設置爲窗口。選擇它們全部並設置爲白色(或所需的顏色)以獲得相同的外觀。 您可能想對文字和邊框顏色做同樣的處理。它的所有關於您想要的定製級別。
要完全控制顏色,您需要重新繪製它們。
protected override void OnPaint (System.Windows.Forms.PaintEventArgs e)
{
if (Enabled)
{
//use normal realization
base.OnPaint (e);
return;
}
//custom drawing
using (Brush aBrush = new SolidBrush("YourCustomDisableColor"))
{
e.Graphics.DrawString(Text, Font, aBrush, ClientRectangle);
}
}
您可以用透明圖像覆蓋表格 – NtFreX
您可以將元素設置爲「只讀」模式。 – Komal
@僅限於正文文本框 – NtFreX