将禁用的TextBox的ForeColor设置为与C#中的BackColor相同

5 .net c# user-interface

如何将禁用的TextBox的当前文本颜色设置为与C#中的当前背景颜色相同?

简单地做txtLala.ForeColor = txtLala.BackColor似乎不起作用.

Mic*_*ren 0

如果这是一个只读文本框,您需要首先显式设置您的背景颜色,然后您的语句将起作用。

txtLala.BackColor = System.Drawing.SystemColors.Info;
txtLala.ForeColor = txtLala.BackColor;
Run Code Online (Sandbox Code Playgroud)

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

话又说回来,如果它是只读的,标签可能会更好。如果你想隐藏它,也许设置.Visible = false会更好。


编辑:这似乎是网络上的一个常见问题。关于winforms:该站点建议将框放入框架中并设置Enabled = false 在框架上,而不是文本框上。一旦你这样做了,你也许能够保持对前色的控制。