如何让TextBox的黑色边框变成淡蓝色(borderstyle=FixedSingle) - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 如何让TextBox的黑色边框变成淡蓝色(borderstyle=FixedSingle) (http://www.webasp.net/article/5/4611.htm) |
| -- 作者:未知 -- 发布日期: 2003-07-12 |
| 我在写的过程中发现了这个控件并不用 Paint 事件,所以只好直接截取 WndProc 函数了,很简单,是这样的: Public Class TextBoxBlue Inherits TextBox Protected Overrides Sub WndProc(ByRef m As system.Windows.Forms.Message) MyBase.WndProc(m) Const WM_PAINT As Integer = &HF If m.Msg = WM_PAINT AndAlso Me.BorderStyle = BorderStyle.FixedSingle Then Dim g As Graphics = Graphics.FromHwnd(Me.Handle) g.DrawRectangle(Pens.Blue, Me.ClientRectangle.Left, Me.ClientRectangle.Top, Me.ClientRectangle.Width - 1, Me.ClientRectangle.Height - 1) g.Dispose() End If End Sub End Class 也可以自己添加一个属性叫做 BorderColor 来选择框架的颜色。 |
| webasp.net |