TreeViews und Xaml

Clipp3r

Grünschnabel
Hallo!

Ich bin neu hier im Forum und habe direkt mal eine kleine Frage bezüglich XAML.

Ich habe in XAML eine TreeView initialisiert und fülle diese über Nodes im C# Code.
Das klappt auch alles wunderbar, doch nun will ich wenn ein Eintrag in der TreeView ausgewählt wird
der Wert/angezeigte Name des Nodes zurückgeliefert bekomme. Kann mir da jemand helfen, wie das funktioniert?
Mit den Windows.Forms ist das ja kein Problem über "SelectedNode", aber bei XAML?

Ich habe schon wie verrückt gesucht, aber nichts gefunden. Hoffe jetzt nicht, dass hier jemand ankommt und mir sagt, dass wäre der erste Eintrag in Google :)
Denn dann würde ich mir hier selbst auf den Hinterkopf schlagen, dass ich wirklich verzweifelt danach gesucht habe.

Danke schonmal für die Hilfe!

Gruß,
Clipper
 
Hier noch eine Variante, die ohne ein Binding arbeitet und auch zeigt, wie Events mit XAML realisiert werden.

Hier das XAML:
Code:
<Window x:Class="TreeViewTest.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="TreeViewTest" Height="329.88679245283" Width="472.981132075472" xmlns:my="clr-namespace:System;assembly=mscorlib">
    <Grid>
    <TreeView Margin="13.7358490566038,7.39622641509436,215.320754716981,17.8867924528302" Name="TreeView" SelectedItemChanged="TreeView_SelectedItemChanged" >
      <TreeViewItem Header="Employee1">
        <TreeViewItem Header="Jesper"/>
        <TreeViewItem Header="Aaberg"/>
        <TreeViewItem Header="12345"/>
      </TreeViewItem>
     <TreeViewItem Header="Employee2">
        <TreeViewItem Header="Dominik"/>
        <TreeViewItem Header="Paiha"/>
        <TreeViewItem Header="98765"/>
      </TreeViewItem>
    </TreeView>
    <TextBox Height="25.0943396226415" Margin="0,7.56603773584906,11.5471698113208,0" Name="SelectedTextBox" VerticalAlignment="Top" HorizontalAlignment="Right" Width="196.905660377359"></TextBox>
  </Grid>
</Window>
Und hier dann die C#-Datei dazu:
C#:
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;


namespace TreeViewTest
{
    public partial class Window1 : System.Windows.Window
    {

        public Window1()
        {
            InitializeComponent();

        }

        public void TreeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
        {
            this.SelectedTextBox.Text = ((System.Windows.Controls.TreeViewItem)e.NewValue).Header.ToString();
        }
    }
}
 

Neue Beiträge

Zurück