Hoi,
In mijn WPF formulier heb ik aan de linkerkant 2 labels staan en aan de rechterkant 2 text velden. Bijde kanten wil ik de data laten binden uit een dictionary/datatabel.
Ik wil de labels vanuit een dictionary laten invullen zodat ik later de naamgevingen gemakkelijk kan aanpassen/vertalen naar een andere taal.
Helaas wordt bij de 2e binding de 1e overschreven waardoor de waarden wegvallen. Weet iemand hoe dit is op te lossen? Zelf ben ik een leek.
XAML
CS
In mijn WPF formulier heb ik aan de linkerkant 2 labels staan en aan de rechterkant 2 text velden. Bijde kanten wil ik de data laten binden uit een dictionary/datatabel.
Ik wil de labels vanuit een dictionary laten invullen zodat ik later de naamgevingen gemakkelijk kan aanpassen/vertalen naar een andere taal.
Helaas wordt bij de 2e binding de 1e overschreven waardoor de waarden wegvallen. Weet iemand hoe dit is op te lossen? Zelf ben ik een leek.
XAML
Code:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid Name="GridContent">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Label Content="{Binding [label_firstname]}" Grid.Column="0" Grid.Row="0"/>
<Label Content="{Binding [label_lastname]}" Grid.Column="0" Grid.Row="1"/>
<TextBox Text="{Binding [str_firstname]}" Grid.Column="1" Grid.Row="0"/>
<TextBox Text="{Binding [str_lastname]}" Grid.Column="1" Grid.Row="1" />
</Grid>
</Window>
CS
Code:
namespace WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
// Set label
Dictionary<string, string> d = new Dictionary<string, string>();
d.Add("label_firstname", "Firstname");
d.Add("label_lastname", "Lastname");
GridContent.DataContext = d;
// Set textbox
DataTable dt = new DataTable();
dt.Columns.Add("str_Firstname", typeof(string));
dt.Columns.Add("str_Lastname", typeof(string));
dt.Rows.Add("Mike", "Smith");
GridContent.DataContext = dt;
}
}
}