vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: NullReferenceException bei Property-Zugriff 
Autor: Preisser
Datum: 24.11.10 12:26

Hallo,

die Exception kann eigentlich nur dadurch entstehen, dass du versuchst, über eine Variable, die den Typ clsKlasse2 hat, der aber noch keine Referenz zugewiesen wurde und daher den Wert null hat, eine Methode (bzw. hier Property) anzuwenden. Da die Variable keine Referenz, sondern null enthält, tritt dort die NullReferenceException auf.

Evtl. greifst du ja auf einen Eintrag im Klasse2-Array zu, der null ist. Hast du schon versucht, das Programm zu debuggen und nachzusehen, auf welchen Eintrag des Klasse2-Arrays zugegriffen wird? Bzw. warum heißt das Array Klasse2, du greifst aber auf Klasse1 als Array zu?

Woher bekommen die anderen Forms eigentlich die Referenz auf frmMain? Anscheinend rufst du ja bei den anderen Forms nur den parameterlosen Konstruktor auf, und die Variablen in der Hauptform, die die Referenzen auf die anderen Forms enthalten, sind keine statischen (Klassen-)Variablen (Shared in VB.Net).

Ich kenn mich jetzt nicht so gut aus in .Net (habe früher in VB6 und dann mit Java programmiert), aber merkwürdigerweise kann man in VB.Net auf Instanzvariablen einer von Form abgeleiteten Klasse zugreifen, obwohl diese gar nicht statisch (shared) sind (evtl. ist das dann sowas wie eine "Standardinstanz" der Form). Vielleicht ist frmMain bei dir die Klasse der Hauptform und keine Referenz auf eine Instanz davon, sodass die Formvariablen dort noch den Wert null enthalten, wenn diese in einer anderen Instanz von frmMain belegt werden, die anderen Forms aber über die Klassenvariable zugreifen. Falls das so ist, solltest du im Konstruktor der anderen Forms eine Referenz auf die Hauptform übergeben, damit diese über die auf die anderen Formvariablen zugreifen können. Oder du deklarierst die beiden Klasse1 und Klasse2 Variablen als Shared (dann kann es aber keine mehrfachen Instanzen der Hauptform geben, die jeweils eigene Variablen für die anderen Forms hat).

Beitrag wurde zuletzt am 24.11.10 um 13:03:07 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
NullReferenceException bei Property-Zugriff1.310Bringtnix24.11.10 08:17
Re: NullReferenceException bei Property-Zugriff1.021Bringtnix24.11.10 08:36
Re: NullReferenceException bei Property-Zugriff911ModeratorFZelle24.11.10 09:39
Re: NullReferenceException bei Property-Zugriff1.012Bringtnix24.11.10 09:59
Re: NullReferenceException bei Property-Zugriff865JangoF24.11.10 11:15
Re: NullReferenceException bei Property-Zugriff1.033Bringtnix24.11.10 11:37
Re: NullReferenceException bei Property-Zugriff1.000Preisser24.11.10 12:26
Re: NullReferenceException bei Property-Zugriff908Bringtnix24.11.10 14:10
Re: NullReferenceException bei Property-Zugriff884Preisser24.11.10 14:34
Re: NullReferenceException bei Property-Zugriff891JangoF24.11.10 15:18
Re: NullReferenceException bei Property-Zugriff911Nico1983HH24.11.10 16:02
Re: NullReferenceException bei Property-Zugriff911Bringtnix24.11.10 16:26

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel