1. 程式人生 > >讓TextBox控制元件顯示為一條橫線(vs2010)

讓TextBox控制元件顯示為一條橫線(vs2010)

新建一個類,將下面程式碼複製到類檔案內

'-------------------------------------------------------------
'類功能:讓TextBox控制元件顯示為一條橫線
'-------------------------------------------------------------
'   方法一:
'      在窗體的load事件中新增以下內容
'       Dim a As new mytextbox
'       me.controls.add(a)
'       a.top=100
'       a.left=100
'   方法二:(推薦用此方法)
'       在窗體的構建檔案中新增以下內容(Form1.Designer.vb)
'        Me.a = New WindowsApplication1.MyTextbox()
'        Me.SuspendLayout()
'        '
'        'a是這個文字框的名字下面可以修改,而且其餘的文字框屬性也可以繼承
'        '
'        Me.a.BorderStyle = System.Windows.Forms.BorderStyle.None
'        Me.a.Location = New System.Drawing.Point(12, 54)
'        Me.a.Name = "a"
'        Me.a.Size = New System.Drawing.Size(100, 14)
'        Me.a.TabIndex = 0
'-------------------------------------------------------------
Public Class MyTextbox
    Inherits System.Windows.Forms.TextBox

    Protected Overrides Sub WndProc(ByRef m As Message)
        MyBase.WndProc(m)
        If m.Msg = &HF Then
            Using g As Graphics = Graphics.FromHwnd(Me.Handle)
                g.DrawLine(Pens.Black, 0, Me.ClientRectangle.Height - 1, Me.Width, Me.ClientRectangle.Height - 1)
            End Using
        End If
    End Sub
End Class