Wie kann ich in VB.NET 2003 aus einer Ownerform Daten in einer geöffneten Ownedform ändern?

Antwort

Um in VB.NET 2003 aus einer Owner-Form (Besitzer-Form) auf eine bereits geöffnete Owned-Form (besessene Form) zuzugreifen und deren Daten zu ändern, gehst du wie folgt vor: **1. OwnedForm referenzieren:** Wenn du die OwnedForm beim Öffnen als Instanz speicherst, kannst du später direkt auf deren öffentliche Eigenschaften oder Methoden zugreifen. **Beispiel:** ```vb.net ' In der Owner-Form: Dim frmOwned As New OwnedForm() Me.AddOwnedForm(frmOwned) frmOwned.Show() ``` **2. Daten ändern:** Angenommen, die OwnedForm hat eine öffentliche Methode oder Eigenschaft, um Daten zu setzen: ```vb.net ' In OwnedForm: Public Sub SetzeText(ByVal text As String) Me.TextBox1.Text = text End Sub ``` Dann kannst du aus der Owner-Form heraus Folgendes tun: ```vb.net frmOwned.SetzeText("Neuer Text") ``` **3. Zugriff auf alle OwnedForms:** Falls du die Referenz nicht gespeichert hast, kannst du über die `OwnedForms`-Eigenschaft der Owner-Form auf alle zugehörigen Forms zugreifen: ```vb.net For Each f As Form In Me.OwnedForms If TypeOf f Is OwnedForm Then CType(f, OwnedForm).SetzeText("Neuer Text") End If Next ``` **Wichtige Hinweise:** - Die OwnedForm muss eine öffentliche Methode/Eigenschaft bereitstellen, um Daten zu ändern. - Die Owner-Form muss die OwnedForm als "owned" hinzugefügt haben (`AddOwnedForm`). **Zusammenfassung:** Du kannst aus der Owner-Form heraus auf die OwnedForm zugreifen, indem du entweder die Instanz speicherst oder über die `OwnedForms`-Eigenschaft iterierst. Über öffentliche Methoden/Eigenschaften der OwnedForm kannst du dann die gewünschten Daten ändern.

Frage stellen und sofort Antwort erhalten

Verwandte Fragen

Kann eine Anwendung in VB.NET 2003 mehr als ein MDI-Formular besitzen?

In VB.NET 2003 kann eine Anwendung grundsätzlich mehrere MDI-Formulare (also mehrere Formulare, die jeweils als MDI-Container fungieren) besitzen. Allerdings kann **immer nur ein MDI-Container ak... [mehr]

Ist in VB.NET 2003 bei der Umwandlung mit CInt(True) das Ergebnis -1 und bei CInt(False) das Ergebnis 0?

In VB.NET 2003 (also Visual Basic .NET 1.1) gilt Folgendes: - Der Ausdruck `CInt(True)` ergibt **-1**. - Der Ausdruck `CInt(False)` ergibt **0**. Das liegt daran, dass in VB.NET (wie auch in klassis... [mehr]

Wie ermittelt man in VB.NET 2003 die TransparentColor beim Extrahieren eines Icons mit SHGetFileInfo?

In VB.NET 2003 gibt es keine direkte Möglichkeit, die Transparenzfarbe (TransparentColor) eines Icons zu ermitteln, das mit `SHGetFileInfo` extrahiert wurde, da das von `SHGetFileInfo` zurüc... [mehr]

Wie wählt man in VB.NET 2003 per Code eine KnownColor aus?

In VB.NET 2003 kannst du eine Farbe aus der Aufzählung `KnownColor` auswählen und daraus ein `Color`-Objekt erstellen. Das geht so: ```vb.net Dim meineFarbe As Color meineFarbe = Color.From... [mehr]

Welchen Einfluss haben überflüssig importierte Klassen mittels Imports in VB.NET 2003 auf ein Programm?

In VB.NET 2003 (also .NET Framework 1.1) hat das Hinzufügen von Imports-Anweisungen für nicht verwendete Namespaces oder Klassen in der Regel **keinen nennenswerten Einfluss auf die Grö... [mehr]

Können in VB.NET 2003 außer Icons auch GIF/PNG für ownerdrawn Contextmenüs verwendet werden?

In **VB.NET 2003** (also .NET Framework 1.1) ist die Unterstützung für Bilder in Menüs standardmäßig auf **Icons** (also `.ico`-Dateien) beschränkt. Das betrifft sowohl... [mehr]

"if shinfo.hicon <> IntPtr.Zero Then ..." verursacht in VB.NET 2003 einen Fehler?

Ja, in **VB.NET 2003** kann folgender Vergleich zu einem Fehler führen: ```vb If shinfo.hIcon <> IntPtr.Zero Then ' ... End If ``` **Grund:** In VB.NET 2003 (also .NET Framewor... [mehr]

Wie speichere ich in VB.NET 2003 ein mit SHGetFileInfo extrahiertes Icon unter einem anderen Namen?

Um ein mit `SHGetFileInfo` extrahiertes Icon in VB.NET 2003 unter einem anderen Namen zu speichern, gehst du wie folgt vor: 1. **Icon extrahieren:** Mit `SHGetFileInfo` erhältst du einen Handle... [mehr]

Wie kann ich in VB.NET 2003 den Fehler 'Der Vorgang "read" konnte nicht auf dem Speicher...' abfangen?

Der Fehler „Der Vorgang 'read' konnte nicht auf dem Speicher...“ ist kein typischer .NET-Fehler, sondern ein Zugriffsverletzungsfehler (Access Violation), der meist auftritt, wen... [mehr]

Wie kann ich in VB.NET 2003 einem Contextmenü Icons hinzufügen?

In **VB.NET 2003** (Visual Studio .NET 2003) gibt es für das Standard-`ContextMenu`-Steuerelement keine direkte Unterstützung für Icons neben den Menüeinträgen. Das Hinzuf&uum... [mehr]