Taste im TextChange Event bestimmen

  • VB.NET
  • .NET (FX) 4.0

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von ThePlexian.

    Taste im TextChange Event bestimmen

    Hallo Zusammen,

    Ich habe derzeit ein kleines Problem bezüglich des TextChange Events. Ich möchte dort gerne erkennen ob Backspace gedrückt wurde.

    Allerdings funktioniert weder e.Keychar noch sender.KeyChar noch txtSender.KeyChar

    Hiereinmal der Code:

    VB.NET-Quellcode

    1. Private Sub CustomTextBox124_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CustomTextBox1.TextChanged
    2. Dim txtSender As CustomTextBox = DirectCast(sender, CustomTextBox)
    3. If checkup.WertLesen("General", "autoDoppelpunkt") = "True" Then
    4. If txtSender.Text.Length = 2 Then
    5. 'If Abfrage Backspace
    6. 'Automatisches hinzufügen des :
    7. txtSender.Text = txtSender.Text & ":"
    8. txtSender.Select(3, 3)
    9. End If
    10. End If
    11. End Sub


    LG

    MarvinKleinMusic schrieb:

    TextChange
    Wenn Du das TextChange-Event nutzt, musst Du zusätzlich das KeyDown-Event requentieren.
    Lösch die Tastenkennung am Ende des TextChange-Events, weil Du per C&P im ContextMenü ein TextChange-Event aber kein KeyDown bekommst.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    1. Text ändern im TextChanged <3 Weist auf sowas nicht die IDE hin ?
    2. Eine Methode die einen String zurückgibt, der "True" enthält --> Boolean, wenn du es ändern kannst.
    3. Sicher, dass immer, wenn sich der Text ändert ein ":" geaddet werden soll ? Oder nur beim Backspace ?
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais