moin, alle programmierer!
ich hab da mal ne frage zu wpf. ich versuche derzeit von einem window auf das andere zuzugreifen, allerdings geht das nicht so wie in winforms. und im internet konnte ich auch nichts finden.
gibt es irgendeine möglichkeit, bei der ich auch auf ALLE elemente des anderen fensters zugreifen kann?
Seite 1 von 1
wpf (vb.net): zugriff auf anderes fenster
Anzeige
#2
geschrieben 01. Februar 2013 - 09:39
Normalerweise hat das Zugreifen auf Objekte und Methoden einer Klasse nichts mit Winforms / WPF zu tun.
In C# würde das ganze so funktionieren: (achtung Pseudocode aus meinen Fingern gezogen)
Form1:
Form2:
In Worten, du deklarierst die Variablen in einem allgemeinen Bereich der Form1 (sprich nicht in einer Funktion), instanzierst die Klasse Form1 in der Form2 und kannst dann so auf alle funktionen und variablen die als public deklariert wurden zugreifen. (private oder protected verhindert das)
Hoffe das hat dir weitergeholfen.
Edit: Ich sehe gerade du willst auf Elemente zugreifen. Dazu müsstest du die GUI über Codeanweisungen zeichnen lassen und auf Public sezten (würde ich nicht Empfehlen) oder du gehst her und übergibst im Konstruktor der Klassen die Parameter die du benötigst.
In C# würde das ganze so funktionieren: (achtung Pseudocode aus meinen Fingern gezogen)
Form1:
using direktiven
bla
bla
bla
public class Form1(object sender, EventArgs e)
{
public string string1;
public int int1;
InitializeComponent();
}
Form2:
//an der stelle wo du auf etwas aus Form1 zugreifen musst
Form1 frm1 = new Form1();
frm1.int1 = 12;
frm1.string1 ="ich greife gerade auf die variable zu die in einer anderen Klasse definiert wurde.";
In Worten, du deklarierst die Variablen in einem allgemeinen Bereich der Form1 (sprich nicht in einer Funktion), instanzierst die Klasse Form1 in der Form2 und kannst dann so auf alle funktionen und variablen die als public deklariert wurden zugreifen. (private oder protected verhindert das)
Hoffe das hat dir weitergeholfen.
Edit: Ich sehe gerade du willst auf Elemente zugreifen. Dazu müsstest du die GUI über Codeanweisungen zeichnen lassen und auf Public sezten (würde ich nicht Empfehlen) oder du gehst her und übergibst im Konstruktor der Klassen die Parameter die du benötigst.
#3
geschrieben 04. Februar 2013 - 08:51
Moin,
wie versuchst du denn darauf zu zugreifen?
Angenommen du hast Form1 + Form2 und willst in Form1 auf Form2 zugreifen, geht das einfach so
Gruß Murdoc
wie versuchst du denn darauf zu zugreifen?
Angenommen du hast Form1 + Form2 und willst in Form1 auf Form2 zugreifen, geht das einfach so
form2.text = "Test".
Gruß Murdoc
- ← wpf (vb.net): system.drawing.graphics nicht definiert!?
- Programmierung
- vb.net: zip datei aus internet streamen und entpacken →
Thema verteilen:
Seite 1 von 1