Fenster 1 -> Zeigt einen Istzustand gewisse Werte
Buttons: Werte hinzufügen, löschen, Ändern
Fenster 2 ->
Dort wird der Wert hinzugefügt, oder geändert
Dh. die Daten müssen von F1 -> F2 gehen und retour.
CODE:
Fenster 1 C#
private void Button_Click(object sender, RoutedEventArgs e)
{
Button but = sender as Button;
TreeViewItem tvi = (TreeViewItem)treeView1.SelectedItem;
switch (but.Name)
{
case "Button_Hinzufügen":
TreeViewItem child = new TreeViewItem();
add hinzufuegen_fenster = new add();
hinzufuegen_fenster.Owner = this;
hinzufuegen_fenster.WindowStartupLocation = WindowStartupLocation.CenterOwner;
hinzufuegen_fenster.ShowDialog();
child.Header = bezeichnung;
tvi.Items.Add(child);
tvi.IsExpanded = true; // expand to show new child element
break;
case "Button_Entfernen":
if (tvi != treeView1.Items.GetItemAt(0)) // remove only if not root
{
((TreeViewItem)tvi.Parent).Items.Remove(tvi);
}
break;
case "Button_Aendern":
tvi.Header = tvi.Header.ToString() + "C";
break;
}
}
Fenster 1 XAML
<DockPanel Name="dockpanelanzeige" LastChildFill="True">
<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal">
<Button Name="Button_Hinzufügen" Click="Button_Click" Margin="3">Hinzufügen</Button>
<Button Name="Button_Aendern" Click="Button_Click" Margin="3">Ändern</Button>
<Button Name="Button_Entfernen" Click="Button_Click" Margin="3">Entfernen</Button>
</StackPanel>
<TreeView Name="treeView1">
<TreeViewItem Name="treeViewItem1" Header="Root"/>
</TreeView>
</DockPanel>
Im Fenster 2 C#
public add()
{
InitializeComponent();
}
string bezeichnung;
private void speichern_Click(object sender, RoutedEventArgs e)
{
bezeichnung = textbox_bezeichnung.Text;
Close();
}
Fenster 2 XAML
<DockPanel>
<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal">
<Button Name="speichern" Margin="3" Click="speichern_Click">Speichern</Button>
<Button Name="abbrechen" Margin="3" Click="abbrechen_Click">Abbrechen</Button>
</StackPanel>
<StackPanel>
<Label Content="Bezeichnung eingeben:"></Label>
<TextBox Height="23" Name="textbox_bezeichnung" Width="220" />
</StackPanel>
</DockPanel>
Was wäre die simplste herangehensweise dass ich die Variable bezeichnung vom Fenster 1 zu 2 und umgekehrt bekommen?
Danke für Eure Hilfe.