La détermination de la valeur d'une cellule sélectionnée est plus une chose WinForms. WPF est conçu pour fonctionner différemment; votre interface utilisateur est destinée à être séparée de la logique. Le DataGrid devient ainsi un instrument de présentation, pas quelque chose à piquer et à pousser pour des valeurs. Au lieu de cela, avec WPF, vous voulez traiter les objets que vous avez liés à la grille, indépendamment de la façon dont ils sont affichés. Oubliez la grille - trouvez simplement l'objet actuellement "sélectionné" par l'utilisateur dans une liste d'objets liés.
Le SelectedItem est une propriété sur la grille elle-même et grâce à des mécanismes de liaison supérieurs de WPF, vous pouvez lier cette valeur à une propriété sur un ViewModel via XAML:
ItemsSource="{Binding Orders, Mode=OneWay}"
SelectedItem="{Binding SelectedOrder, Mode=TwoWay}"
Lorsque l'utilisateur sélectionne un élément dans la Dans la grille, la liaison bidirectionnelle met à jour la propriété SelectedItem sur le ViewModel avec la valeur de cet objet dans cette ligne. De cette façon, vous n'avez même pas à faire face à la connaissance de la grille ou de l'interface utilisateur.
J'espère que cela a du sens. Je sais que c'est une approche différente et une façon différente de penser venant de WinForms.
THX beaucoup Avatar.je veux juste la valeur de datagrid [selectedrow] [première colomn]! Je veux dire que si je clique sur [3ème ligne , 5ème col] ça me donne [3ème rangée, premier col] – Shane