在.NET页面上,我有一个文本框。如果我不更改BackColor
属性,它看起来很平坦。但是,使用BackColor
时,例如:
txt.BackColor = System.Drawing.Color.Yellow;
外观改变为某种我不喜欢的“3D”。是否有可能避免这种影响?
第一
编辑:
答案 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。