簡體   English   中英

將禁用的TextBox的ForeColor設置為與C#中的BackColor相同

[英]Set a disabled TextBox's ForeColor to be the same as its BackColor in C#

如何將禁用的TextBox的當前文本顏色設置為與C#中的當前背景顏色相同?

簡單地做txtLala.ForeColor = txtLala.BackColor似乎不起作用。

這有效:

txtLala.Text = "Red";
txtLala.BackColor = System.Drawing.Color.Red;
txtLala.ForeColor = txtLala.BackColor;
txtLala.ReadOnly = true;

嘗試在readonly之前設置color 還要檢查你是如何設置顏色的!

編輯

試試這個

txtLala.Attributes.Add("style","background-color:Red;color:Red");

如果您試圖讓它不可見,您知道可以將其設置為

txtLala.Visible = False;

編輯二

我終於試過了

txtLala.Enabled = false;

......你看到那個灰色陰影的顏色! 我不認為你可以搞砸它,它看起來是一個瀏覽器屬性設置。

為什么不設置為ReadOnlyVisible = False

也許你有充分的理由認為Enabled = false

但你應該注意:

使用Enabled屬性指定或確定控件是否有效。 設置為false時,控件顯示為灰色 ,防止在控件中輸入任何輸入。

注意始終可以啟用或禁用功能。 但是,調暗和鎖定控件僅適用於Microsoft Internet Explorer版本4及更高版本。

此屬性沿控件層次結構向下傳播。 因此,禁用容器控件將禁用該容器中的所有子控件。

注意並非所有控件都支持此屬性。 有關詳細信息,請參閱單個控件。

如果這是一個只讀文本框,則需要先顯式設置BackColor,然后您的語句才能生效。

txtLala.BackColor = System.Drawing.SystemColors.Info;
txtLala.ForeColor = txtLala.BackColor;

參考: http//bytes.com/groups/net-c/233961-read-only-textbox

再說一遍,如果它是re​​adonly,標簽可能會更好。 如果你試圖隱藏它,也許設置.Visible = false會更好。


編輯 :這似乎是網絡上的一個常見問題 關於winforms此站點建議將框放入框架並在框架上設置Enabled = false ,而不是文本框 一旦你這樣做,你可能能夠保持對前景色的控制。

它似乎只適用於只讀的TextBox。 如果禁用(.Enabled = false)。 它似乎不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM