| 

.NET C# Java Javascript Exception

1
Ich möchte über einer Schaltfläche, die sich auf ein zweites Formular befindet, einen Eintrag in einen TreeView Steuerelemet auswählen, das sich auf Formular eins befindet. Das TreeView Steuerelemet wird über das TreeView_AfterSelect abgefragt. Also, klicke ich auf der Schaltfläche soll der Eintrag angewählt sein, als ob ich den Eintrag im TreeView Steuerelemet angeklickt habe.
Hat jemand eine Idee, kann jemand helfen, danke im Voraus.

Sprache - Visual Basic 2010

Zusatz zu meiner Frage:

Hallo AlexF,
erst einmal vielen Dank für deine Antwort, den Tipp, mit der EventAggregator werde, ich mal nachgehen.
Möchte dir jedoch gerne mein Problem von der Praxis aus noch einmal schildern.
Ich habe eine Software entwickelt, die unterschiedliche Berechnungen ausführen kann, die Ergebnisse werden in einer Datenbank abgespeichert. Im TreeView Steuerelement kann man verschiedene Berechnungen durch Anklicken auswählen. Nach einer Auswahl werden zu einer Berechnung verschiedene TextBoxen als Eingabefelder angezeigt u.s.w. Nachdem die Berechnung ausgeführt und deren Ergebnisse in die Datenbank abgespeichert wurde, möchte ich eine Möglichkeit einbinden, die es möglich macht den letzten Zustand der Berechnung wieder herzustellen. Dazu möchte ich eine Schaltfläche, die sich in der Datenbank befindet die Rückführung einleiten. Da ich mit mehreren TreeView Steuerelemente arbeite, gehe ich wie fogt vor:

Form1.TreeView1.Visible = True
Form1.TreeView1.ExpandAll().

Der Code ruft genau das TreeView Element, auf was ich brauche und jetzt wollte ich gleich noch die Information mitgeben, welchen Eintrag ich im TreeView auswählen will, damit die Eingabefelder für diese Berechnung angezeigt werden können. Das ist die Bedingung damit ich den letzten Zustand der in der Datenbank gespeichert ist wieder hergestellt werden kann.

Ist da die EventAggregator die Richtige Anweisung für mich?
Vielen Dank für deine Antwort im Voraus.
Mfg Matthias.
27.03.2014
MatSon 1 1
2 Antworten
1
Hallo MatSon!

Wenn du auf den Button klickst, löst du ein Event aus in dem mitgeteilt wird welches Element des TreeViews ausgewählt werden soll.
Formular1 muss sich dann auf das Event des Formulars2 binden wodurch eine enge Kopplung entsteht. Du kannst dann Formular1 nicht ohne Formular2 verwenden.

Der schönere Weg würde über einen EventAggregator führen da du damit die enge Bindung zwischen den beiden Formularen umgehst. Formular1 kann somit auch ohne Formular2 geöffnet werden. Wenn ein Element selektiert werden soll, wird das über eine Nachricht des EventAggregators mitgeteilt.
Sollte die externe Selektierung aus einem weitern Formular passieren, kannst du von Formluar3 aus ebenfalls eine Nachricht über den EventAggregator schicken.

Beispiele für das EventAggregator Pattern solltest du über Google finden.
28.03.2014
AlexF 81 1
0
Ich weiß, dass es wirklich wichtig ist, wenn Sie einige Problem mit Ihrem Programm haben, um herauszufinden, und wenn alles in Ordnung ist, als Sie später weniger Sachen zur Auswahl haben.
do my paper for 24h
21.07.2016

Stelle deine Treeview-Frage jetzt!