Autor Beitrag
nabralanca
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Di 03.02.09 19:40 
hallo, ich hab grad ein programm mit einem mdi hauptfenster programmiert, das verschiedene childfenster hat, die ich mit ihrem eigenen code programmiert habe.

eine variable brauch ich nun in alle subfenstern.
wie kann ich sie für alle zu gänglich machen????
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Di 03.02.09 22:52 
Entweder Du übergibst Sie einem selbst definierten Konstruktor oder Du stellst sie als public-Eigenschaft im Hauptformular zur Verfügung. Die Childs können dann per this.Parent über einen TypeCast in Deine Formularklasse dann auch auf diese Eigenschaft zugreifen.

Aber ich würde die erste Methode präferieren.
nabralanca Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mi 04.02.09 19:41 
funktioniert

und wie mach ich das mit arrays??

das mag irgenwie nicht
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 04.02.09 19:57 
user profile iconnabralanca hat folgendes geschrieben Zum zitierten Posting springen:
das mag irgenwie nicht
Sehr präzise Beschreibung... ;-)
Wie sieht denn der Code dazu aus?

Hier gibts ein Beispiel:
www.codeproject.com/KB/cs/csharptips.aspx

Zu Arrays gibt es hier auch eine Warnung wie man es nicht machen sollte:
msdn.microsoft.com/d...ibrary/0fss9skc.aspx
nabralanca Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mi 04.02.09 20:03 
ja meine angabe war ein bischen unddeutlich.

also ich habe eine variable mit public int a= new; int deklariert.

nun möchte ich einen public string array deklarieren, der soviele elemente wie a hat

dann kommt folgende fehlermeldung

Fehler 2 Ein Feldinitialisierer kann nicht auf das nicht statische Feld bzw. die nicht statische Methode oder Eigenschaft "WindowsFormsApplication1.Daten.a" verweisen.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 04.02.09 20:17 
Die Initialisierung wird ja nicht erst ausgeführt, wenn du a einen Wert zugewiesen hast, wenn du das oben in die Deklaration schreibst. Und bei dieser Initialisierung kannst du nicht den Wert des einen Felds zur Initialisierung eines anderen Feldes nutzen.

Wenn du a einen Wert zuweist, dann musst du auch das Array mit dieser Länge initialisieren.