WPF Liaison SelectedItem dans la grille de données
Donc, j'ai un TabControl lié à une liste de projets (pour chaque onglet est un projet) - qui fonctionne très bien. Le contenu de chaque onglet est un DataGrid avec une liste des employés - qui fonctionne très bien. Maintenant, je voudrais vous montrer quelques informations sur l'employé actuellement sélectionné sur la grille de données. Voici un code:
MainWindow.fichier xaml:
<Window.Resources>
<DataTemplate x:Key="ItemTemplate">
<TextBlock Text="{Binding Name}" />
</DataTemplate>
<DataTemplate x:Key="ContentTemplate">
<DataGrid ItemsSource="{Binding Employees}" SelectedItem="{Binding SelectedEmployee, Mode=TwoWay}" SelectionMode="Extended" SelectionUnit="FullRow" Name="employeesList">
</DataGrid>
</DataTemplate>
</Window.Resources>
et plus tard, j'ai envie de la tester cette liaison en écrivant dans label:
<Label Name="emp" Content="{Binding SelectedEmployee}"></Label>
et MainWindowViewModel:
public Employee SelectedEmployee { get { return selectedEmployee; }
set
{
if (selectedEmployee != value)
{
selectedEmployee = value;
NotifyPropertyChanged("SelectedEmployee");
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
Je suis un peu un newbie de WPF, j'ai lu quelques trucs mais ils n'aident pas. Le label " pge " ne montre rien. Ce qui me manque?
OriginalL'auteur kcz | 2012-12-07
Vous devez vous connecter pour publier un commentaire.
Vous n'êtes pas notifiant que votre propriété a changé, Essayez cette
Test:
Code:
Cela semble fonctionner comme prévu, ou alors j'ai loupé quelque chose?
J'ai fait quelques tests, mais semble fonctionner, cependant je n'ai pas votre xaml qui détient la grille de modèle.
OriginalL'auteur sa_ddam213