Fehler Objektverweis bei Auslesen von MainFrame-Textboxen in Modul

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Fehler Objektverweis bei Auslesen von MainFrame-Textboxen in Modul

    Hallo Freunde des Programmierens :),

    ich will über ein separates Modul die Textboxen aus meiner Main-Form auslesen. Dazu rufe ich meiner Main-Form die Sub "Datenauslesen" im Modul "Editor" auf und übergebe dabei das Me-Objekt. In der Sub übernehme ich das Me-Objekt als Referenz. Hier der Code Dazu:

    VB.NET-Quellcode

    1. Public Class Frm_Main
    2. Private Sub B_Bearbeiten_Click(sender As Object, e As EventArgs) Handles B_Bearbeiten.Click
    3. Editor.Datenauslesen(Me)
    4. End Sub
    5. End Class

    VB.NET-Quellcode

    1. Module Editor
    2. Public aAuslesen(6) As String
    3. Public Sub Datenauslesen(ByRef Frm_Main As Frm_Main)
    4. Erase aAuslesen
    5. aAuslesen(0) = Frm_Main.StrasseTextbox.Text
    6. aAuslesen(1) = Frm_Main.NachnameTextbox.Text
    7. aAuslesen(2) = Frm_Main.VornameTextbox.Text
    8. aAuslesen(3) = Frm_Main.TitelTextbox.Text
    9. aAuslesen(4) = Frm_Main.GeburtsdatumTextbox.Text
    10. aAuslesen(5) = Frm_Main.GeburtsortTextbox.Text
    11. aAuslesen(6) = Frm_Main.HausnummerTextbox.Text
    12. End Sub
    13. End Module


    Visual Studio wirft keinen Fehler aus. Erst der Compiler schreit beim Auslesen der ersten Textbox und Zuweisung an den Array-Platz. Die Fehlermeldung lautet: System.NullReferenceException: "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
    Gehe in nun zur Überprüfung im Einzelschritt-Debugg vor, sehe ich, dass auf die erste Textbox zugegriffen und auch deren Inhalt abgerufen wird. Ob der Inhalt dann auch ins Array geschrieben wird, kann ich nicht mehr Überprüfen, da die zuvor genannte Fehlermeldung kommt und die Debuggung abbricht.

    Hat von euch jemand eine Idee auf was die Fehlermeldung zurückzuführen ist und wie ich diese umgehen/korrigieren kann?
    naja - guck die Fehlerzeile an (du hast sie uns nicht genannt).
    Dort werden sicherlich ein paar Objekte benutzt. Eines davon ist Nothing.
    Das lässt sich doch mit Leichtigkeit herausfinden: zB dass es das Form nicht ist, ergibt sich daraus, dass du den Textbox-Text sehen kannst. Also such ein anderes Objekt in der Fehlerzeile.

    Was übrigens macht diese mysteriöse Erase-Anweisung? Bzw. was soll die machen?
    Solch habich noch nie benutzt - ich glaub auch nicht, dass die etwas gutes tut.