Comment accéder à la grille de données de modèle de colonne de la zone de texte texte WPF C#
- Je besoin pour accéder au texte dans un DataGrid
s'colonne modèle de code derrière, mais je ne sais pas comment. J'ai besoin de changer le texte de chaã je passe sur le SelectionChanged
événement. Quelqu'un peut-il me dire comment faire? J'ai trouvé une question similaire ici
mais il n'avait pas de réponses.
Vous devez vous connecter pour publier un commentaire.
Pour trouver un contrôle dans un
DataGrid
modèle de colonne, vous devez utiliserFindChild()
:Par exemple, j'ai ce modèle de colonne dans MyDataGrid:
Y accéder à partir du code, vous pouvez:
Remarque: Toujours utiliser FindChild uniquement lorsque le contrôle sera entièrement chargé, sinon il ne sera pas le trouver et donner la valeur null. Dans ce cas, j'ai mis ce code dans l'événement ContentRendered (Fenêtre) qui dit que tout le contenu de la fenêtre charger avec succès (même l'événement MyDataGrid_Loaded ont pas accès à MyTextBlock, car il n'est pas encore chargé):
EDIT1:
Pour accéder au contrôle de la ligne sélectionnée pour ajouter un événement SelectionChanged à DataGrid dans lequel la fonction, ce qui donnera une ligne sélectionnée:
Liste des GetDataGridRows():
EDIT2:
Pour obtenir TOUS les articles que j'ai réécrit la fonction FindChild():
L'appel de cette nouvelle fonction:
Généralement, cette pratique n'est pas la meilleure ... pour obtenir les objets (tels que certains ou l'ensemble), vous pouvez vous adresser directement à la liste qui stocke vos données (comme ObservableCollection). Aussi, il est utile d'événements tels que PropertyChanged.