http://pcnetbeginners.seesaa.net/article/157147979.html
テキストボックスをクリックすると、通常はその場所にカーソルが移動して全選択にはならない。
これはwindowsの規定動作である。
どうしてもテキストボックスをクリックしたときに全選択されるようにしたい場合、以下のように、最初にクリックしたときは全選択、それ以外はその場所にカーソル移動(規定動作)とするとよい。
Public Class TextBoxEx Inherits TextBox ''' <summary> ''' 最初のクリックの場合テキストを全選択するためのフラグ ''' </summary> ''' <remarks></remarks> Private bFirstClick = False Protected Overrides Sub OnMouseEnter(e As EventArgs) bFirstClick = Not Me.Focused ' フォーカスが無いところからクリックすると「最初のクリック」 MyBase.OnMouseEnter(e) End Sub Protected Overrides Sub OnMouseLeave(e As EventArgs) bFirstClick = False MyBase.OnMouseLeave(e) End Sub Protected Overrides Sub OnMouseUp(e As MouseEventArgs) ' 最初のクリックの場合は全選択 ( ただし範囲選択した場合は全選択しない ) If bFirstClick And Me.SelectionLength = 0 Then Me.SelectAll() End If bFirstClick = False MyBase.OnMouseDown(e) End Sub End Class