ユーザーがテキストボックスに入力すると、大文字で始まらずに入力された単語がいくつか自動的に修正されます。これは、Visual Studio が vb 構文を修正する方法に似ています。これの例は次のとおりです。
ユーザーが「else」と入力すると、自動的に「else」に修正されます。textchanged イベントでこれを行う必要があることはわかっています。私はそれを行う方法がわからないだけではありません。
vb.net を使用しています。
ユーザーがテキストボックスに入力すると、大文字で始まらずに入力された単語がいくつか自動的に修正されます。これは、Visual Studio が vb 構文を修正する方法に似ています。これの例は次のとおりです。
ユーザーが「else」と入力すると、自動的に「else」に修正されます。textchanged イベントでこれを行う必要があることはわかっています。私はそれを行う方法がわからないだけではありません。
vb.net を使用しています。
あなたの質問が開始キャップに関連している場合、これが私のプロジェクトで使用しているコードです。
Public Sub StartCaps(ByRef mCtrl As Object)
Dim mTypeName As String
mTypeName = TypeName(mCtrl)
Select Case mTypeName
Case "TextBox"
Dim sel_start As Integer, sel_length As Integer
Dim txtProperCase As TextBox
txtProperCase = CType(mCtrl, TextBox)
sel_start = txtProperCase.SelectionStart
sel_length = txtProperCase.SelectionLength
txtProperCase.Text = StrConv(txtProperCase.Text, VbStrConv.ProperCase)
txtProperCase.SelectionStart = sel_start
txtProperCase.SelectionLength = sel_length
Case "ComboBox"
Dim sel_start As Integer, sel_length As Integer
Dim cmbProperCase As ComboBox
cmbProperCase = CType(mCtrl, ComboBox)
sel_start = cmbProperCase.SelectionStart
sel_length = cmbProperCase.SelectionLength
cmbProperCase.Text = StrConv(cmbProperCase.Text, VbStrConv.ProperCase)
cmbProperCase.SelectionStart = sel_start
cmbProperCase.SelectionLength = sel_length
Case "DataGridView"
Dim grdProperCase As DataGridView, mCell As DataGridViewCell
grdProperCase = CType(mCtrl, DataGridView)
If Not grdProperCase Is Nothing Then
mCell = grdProperCase.CurrentCell
If Not mCell Is Nothing AndAlso Not mCell.Value Is Nothing Then
mCell.Value = StrConv(mCell.Value.ToString, VbStrConv.ProperCase)
End If
End If
End Select
End Sub
これは、コントロールの TextChanged イベントからの呼び出しです。
Private Sub txtSname_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSname.TextChanged, txtName.TextChanged
StartCaps(sender)
End Sub
-------------- あなたのコードに役立つかもしれません ------ 頑張ってください ---