J'ai une constante de données wpf avec 2 colonnes (ProductID et Description). La colonne ProductID est une zone de liste déroulante et la description est une zone de texte. Dans l'événement SelectionChanged du ProductID, je veux attribuer une valeur à la colonne Description. J'ai besoin de savoir comment affecter la valeur à la zone de texte Description pour la ligne de la liste déroulante qui a déclenché l'événement SelectionChanged. Quelqu'un peut-il s'il vous plaît fournir un exemple de code? Cela semble si simple mais je ne trouve pas de réponse. MerciComment affecter une valeur à la cellule de la cellule de données wpf
0
A
Répondre
0
Une meilleure façon de le faire est à l'aide de reliure aux propriétés comme
private ProductIdEnum m_productId;
public ProductIdEnum ProductId
{
get
{
return m_productId;
}
set
{
m_productId = value;
// Value changed...
}
}
Pour ajouter un gestionnaire d'événements pour l'événement SelectionChanged du ComboBox, vous pouvez le faire, mais je ne le recommanderais pas.
<DataGridComboBoxColumn Header="ProductID"
...">
<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="{x:Type ComboBox}">
<EventSetter Event="SelectionChanged" Handler="ProductIdChanged" />
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>
Et dans le code derrière
public T GetVisualParent<T>(object childObject) where T : Visual
{
DependencyObject child = childObject as DependencyObject;
while ((child != null) && !(child is T))
{
child = VisualTreeHelper.GetParent(child);
}
return child as T;
}
void ProductIdChanged(object sender, SelectionChangedEventArgs e)
{
ComboBox comboBox = sender as ComboBox;
DataGridRow dataGridRow = GetVisualParent<DataGridRow>(comboBox);
SomeClass myClass = dataGridRow.Item as SomeClass;
// Set description
}
0
utilisation de liaison de données, ont une structure similaire,
Inventaire: ObservableCollection ProductID Chaîne Description
Bind ObservableCollection à votre DataGrid. Dans votre handle ViewModel, la propriété ProductID a changé et ensuite mettre à jour la description comme vous le souhaitez.
Vous devriez lire à propos du modèle MVVM, voir http://msdn.microsoft.com/en-us/magazine/dd419663.aspx.
Questions connexes
- 1. WPF Datagrid lit une valeur de cellule
- 2. WPF Toolkit DataGrid SelectionChanged Récupérer la valeur de la cellule
- 3. grille de données wpf - passage d'une cellule à une autre cellule
- 4. Copier la couleur d'intérieur de cellule de la cellule cliquée à la cellule active
- 5. attacher une cellule à une cellule focalisée
- 6. Rendre une cellule dans un JTable modifiable - la valeur par défaut de la cellule
- 7. cellule de données flexflex cellule setfocus par cellule
- 8. Comment obtenir la valeur de la cellule d'affichage Datagrid?
- 9. Jquery Récupérer la valeur de la cellule en fonction de l'état d'une autre cellule
- 10. récupère la valeur de la cellule de ligne de table
- 11. Modifier la valeur de chaque cellule dans une colonne DataTable
- 12. comment obtenir la valeur de la cellule dans l'iphone?
- 13. Comment obtenir la valeur de cellule de listview
- 14. Comment commuter cellule Modifier lors de quitter la cellule
- 15. Tableau Voir la valeur de la cellule de l'iphone
- 16. WPF - Comment puis-je trouver le GridViewColumn de la cellule
- 17. Utiliser la valeur de cellule dans la formule vlookup
- 18. Un moyen de transférer la valeur d'une cellule à l'autre?
- 19. Faire défiler jusqu'à la dernière table Afficher la cellule Affiche les données de la première cellule
- 20. Conserver la valeur entrée dans la cellule de DevExpress Xtragrid
- 21. Comment obtenir la valeur de la cellule de formule (données) en utilisant apache poi
- 22. Retourne la valeur de la cellule datagridview dans vb.net
- 23. Comment sélectionner la cellule à partir de la macro
- 24. Comment déterminer la valeur de la cellule sélectionnée dans DataGrid? (WPF)
- 25. WPF - Comment obtenir une cellule à partir d'un DataGridRow?
- 26. Enregistrer la cellule modifiée dans mysql - Comment envoyer un identifiant avec les données de cellule modifiées?
- 27. Obtenir une cellule de l'ensemble de données
- 28. Ne conserve pas la valeur de la cellule
- 29. DataGridView - "Style de sélection de cellule" - Modifier la cellule
- 30. Si la cellule a été touchée, activez une cellule différente
Merci! Cela fonctionnera. Que faire si j'ai un TextBox dans DataGrid qui n'est pas lié à un objet Class? C'est simplement là pour montrer le but et je veux afficher une valeur. – Seecott