C# 怎么改变Textbox的边框颜色?Winform

2024-11-17 11:39:28
推荐回答(5个)
回答1:

原生的TextBox不支持修改边框颜色,所以你需要重写一个Textbox控件。
参照这里:
http://wenku.baidu.com/view/64910db565ce0508763213ef.html

如果你对于重写控件或者绘制这种技能比较不顺手的话,可以考虑这样:
将TextBox 的边框样式设置为None,然后在其底下放一个PictureBox,PictureBox里放一个大小适中、带边框的图片。
这样看起来就是文本框有了边框了。
然后再为TextBox设置MouseHover事件,改变PictureBox的Image便实现了变色。

回答2:

搞个Panel,里面放个TextBox,设置TextBox的Dock为Fill,这样TextBox就填满了Panel,现在要留点边缘空挡,来冒充边框,然后将Panel的背景色换掉,就看上去时边框的颜色换了,只要将TextBOx的Margin变大,则留下的空挡就会变大,也就是所看到的边框变粗了!

回答3:

Textbox没有边框颜色的属性,
只有border-style属性,可以选择none(无边框)、FixedSingle(黑色)、Fixed3D(蓝色)
如果想要其他颜色,有个不是办法的办法:可以把border-style设置成NONE,然后添加一个新的Panel控件包裹这个TEXTBOX,设置Panel的Background-color。

回答4:

不好意思textbox暂时还没这属性,不过可以改变它的背景颜色也是不错的,效果也蛮好的,只是不要颜色不要太鲜艳了例如: this.textBox1.BackColor =Color.LightGreen;谢谢

回答5:

换个思路,当鼠标移上去的时候画一个与TextBox相同大小的矩形,颜色自己定义