2010-05-13 7 views
0

La grille de données WPF -comme ça va marcher, mais l'implémentation du combobox ne fonctionne pas directement depuis le concepteur. Donc je suis parti errant dans le XAML changeant aléatoirement des choses essayant de le faire fonctionner.ADO Entity Framework 4 vers WPF Datagrid. DatagridComboBox cauchemar

Les problèmes sont nombreux. Je veux afficher une relation de clé étrangère (avec une liste déroulante) au lieu d'un groupe de chiffres pour une sélection. Il semble que ça ne devrait pas être si difficile.

Je peux obtenir les bonnes valeurs à afficher (leur description au lieu d'un ID), mais la table panique en pensant que toutes les valeurs ont été modifiées. Si je sélectionne un menu déroulant, il refuse de me permettre d'éditer autre chose. Je veux mettre ça comme un bug .NET, mais étant donné que je suis nouveau dans les datagrids WPF, c'est probablement juste moi. Voici le code.

      <DataGridComboBoxColumn Header="Make Up" ItemsSource="{Binding Source={StaticResource materialMakeUpTypesViewSource}}" 
             DisplayMemberPath="Description" TextBinding="{Binding Path=MaterialMakeUpType.Description}" 
             SelectedItemBinding="{Binding Path=MaterialMakeUpType.Description}" SelectedValueBinding="{Binding Path=MaterialMakeUpType.ID}" /> 

Répondre

0

Ceci était juste déroutant en raison des différentes options.

ItemSource avait raison. DisplayMemberPath, à droite. TextBinding n'était pas nécessaire et a causé beaucoup d'artefacts visuels. SelectedItemBinding n'était pas nécessaire. Je devais ajouter un SelectedValuePath.

Quoi qu'il en soit, cela fonctionne comme prévu.

      <DataGridComboBoxColumn Header="Make Up" ItemsSource="{Binding Source={StaticResource materialMakeUpTypesViewSource}}" 
             SelectedValuePath="ID" 
             DisplayMemberPath="Description" 
             SelectedValueBinding="{Binding Path=makeup}" />