.NET TextBox BackColor问题

时间:2011-08-01 10:30:34

标签: .net asp.net textbox backcolor

在.NET页面上,我有一个文本框。如果我不更改BackColor属性,它看起来很平坦。但是,使用BackColor时,例如:

txt.BackColor = System.Drawing.Color.Yellow;

外观改变为某种我不喜欢的“3D”。是否有可能避免这种影响?

第一

enter image description here

编辑:

enter image description here

3 个答案:

答案 0 :(得分:1)

似乎backcolor影响了bordertyle-property?这对我没用, 但我可以像这样模拟“正常”文本框的外观

<asp:TextBox runat="server" ID="valueTxt" Enabled="false" BackColor="#E8E8E8" Width="50px" BorderStyle="NotSet" BorderWidth="1px" BorderColor="#B0B0B0"></asp:TextBox>

答案 1 :(得分:0)

欢迎来到浏览器世界。浏览器使用当前的操作系统,并有自己的控件来呈现控件。因此,在使用Safari的Mac上,文本框可能与Ubuntu上的Firefox看起来不同。 Windows上的IE浏览器。

您可以通过设置样式来影响它,但您仍然依赖于浏览器。更好的方法是创建一个css文件,其中包含要应用于定义的输入元素的所有样式,或者创建一个css类,以便您可以单独应用它们。您只需要引用css文件然后获取样式,而不是每次都设置所有这些属性。

西蒙

答案 2 :(得分:0)

我遇到了同样的问题,文本框被设置为&#34; .Enabled = false&#34;和&#34; .BackColor = Color.LightGrey&#34;。文本框边框正在更改为&#34; 3D&#34;。
只需设置&#34; .Enabled = false&#34;默认情况下将文本框设置为灰色。将其改回&#34; .Enabled = true&#34;将文本框设置回白色。

边界没有改变。

所以如果你不需要,就不要改变.BackColor。