Treeview mit Kontextmenü // Visual C++ / CLI

Hallo zusammen,

ich bitte um Hilfe für folgendes Problem.

Ich habe mit Visual C++ 2008 ein Fenster erstellt, dass ein treeview enthält. Die Baumstruktur kann während der Laufzeit vom User erweitert werden. Soweit funktioniert auch alles.

Jetzt möchte ich den Elementen auf der 1. Ebene ein Kontextmenü zuordnen, dass für alle die gleichen Funktionen haben soll.

Das habe ich bisher so gelöst, dass ich ein Kontextmenü erstellt habe und allen Elementen zugeordnet habe, bzw. während der Laufzeit zuordnet, sobald es neue Elemente auf Ebene 1 gibt. Auch das funktioniert soweit.

Für die Ereigenisbehandlung der Elemente im Kontextmenü muss ich jetzt aber wissen, über welches Treeview-Element das Kontextmenü aufgerufen wurde - nur habe ich keine Idee, woher ich diese Info nehme.

Hat vielleicht jemand eine Idee? Falls ich so auf dem falschen Weg bin, bin ich auch für andere Ideen dankbar, wie ich das Kontextmenü mit den Treeview-Elementen verbinde.

Vielen Dank für Eure Hilfe!

Ich habe mit Visual C++ 2008 ein Fenster erstellt, dass ein
treeview enthält. Die Baumstruktur kann während der Laufzeit
vom User erweitert werden. Soweit funktioniert auch alles.

Da deine Frage nichts mit der Sprache C++ und alles mit dem Framework .NET zu tun hat, könntest du versuchen, sie im .NET-Brett noch mal zu stellen.

Zum Inhalt der Frage: ich kann dir leider (noch) nicht helfen, werde aber bald auch etwas in der Art haben wollen, also bin ich an den Antworten hochinteressiert :smile:.

Viele Grüße,
Sebastian

Lösung: Treeview mit Kontextmenü // Visual C++
Falls es jemanden interessiert:

Habe nach einigem Herumprobieren einen Workaround gefunden:

Mit dem NodeMouseClick-Ereignis von treeview stelle ich fest, welcher als letzter geklickt wurde. Diesen Wert speicher ich in einem Feld des Fensters, in dem treeview eingefunden ist.

Bei der Ereignissbehandlung des Kontextmenüs kann ich auf diesen Wert zugreifen und mein Problem ist gelöst.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]