VB.NET VbNewLine

アンドリュー・ヘンツ

複数行のテキストボックスとこのコードがあります:

If e.KeyCode = Keys.Enter Then
    TextBox1.Text = TextBox1.text + vbNewLine + mystring
End if

問題は、Enterキーを押すと、新しい行に移動してカーソルを最後の文字に置くのではなく、次の行にジャンプすることです。どういうわけか、戻るボタンを押して上の行に戻るようにすることを考えていましたが、それは可能ではありません。

ビジュアルヴィンセント

これが発生したKeyDown場合、あなたがしなければならないのは、実際のキー押下を続行しないように指示することだけです。現状では、現在新しい行を追加していますが、システムも追加しているためです(ENTERキーを押したため)。

実際のキー押下をインターセプトし、それがに渡されTextBoxないようにするには、SuppressKeyPressプロパティTrue次のように設定するだけです

If e.KeyCode = Keys.Enter Then
    TextBox1.AppendText(vbNewLine & mystring)
    e.SuppressKeyPress = True
End If

コメントに記載されているように、連結はアンパサンド(&)演算子TextBox1.AppendText(...)を使用して行う必要があり、コードが読みやすくなるため、使用することをお勧めします。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事