AddHandler / RemoveHandler / DataGridViewEditingControl

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Morrison.

    AddHandler / RemoveHandler / DataGridViewEditingControl

    Hallo!

    Ich habe ein DataGridView wo ich im Ereignis:
    ​EditingControlShowing

    ein TextChanged-AddHandler auf das EditingControl erstelle.

    Nun wollte ich fragen wo bzw. wann ich das RemoveHandler setzen soll??

    Wenn ich das im
    ​CellEndEdit
    Event setze bekomme ich die Fehlermeldung das das EditingControl Nothing ist.

    Wird das AddHandler mit dem CellEndEdit automatisch gelöscht?
    Automatisch wird da wohl nix abgemeldet. Wenn das Programm beendet ist, sicherlich schon.
    Merk Dir doch das gecastete Control der Cell klassenweit. Dann kannst Du das Event auch sauber wieder abbestellen:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim TextBox As TextBox = Nothing
    3. Private Sub DataGridView1_EditingControlShowing(sender As Object, e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
    4. TextBox = DirectCast(e.Control, TextBox)
    5. AddHandler TextBox.TextChanged, AddressOf Foo
    6. End Sub
    7. Private Sub Foo(sender As Object, e As EventArgs)
    8. End Sub
    9. Private Sub DataGridView1_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
    10. RemoveHandler TextBox.TextChanged, AddressOf Foo
    11. End Sub
    12. End Class
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.