Est-il possible d'associer une commande à un DataGridHyperlinkColumn? Je l'ai essayé ceci:Existe-t-il un moyen d'associer une commande à une boîte à outils WPF DataGridHyperlinkColumn?
<DataGridHyperlinkColumn Header="Client Name" Binding="{Binding ShortName}">
<DataGridHyperlinkColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="Hyperlink.Command"
Value="{Binding DataContext.NavigateToClientCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type local:ClientsSummaryView}}}"/>
<Setter Property="Hyperlink.CommandParameter" Value="{Binding}"/>
</Style>
</DataGridHyperlinkColumn.ElementStyle>
</DataGridHyperlinkColumn>
Lors de l'exécution, je peux voir que la liaison est en cours d'évaluation correctement (le getter de la propriété pour la commande est appelée), mais la commande est exécutée lorsque je clique sur le lien hypertexte. Y a-t-il une meilleure manière de faire cela?
Merci,
Daniel
Abe: merci. J'espérais raccourcir autour DataGridTemplateColumn, mais, honnêtement, il ne semble pas bien pire que ce que j'avais. Merci encore! – dks1983
Pouvez-vous expliquer comment fonctionnent les <? Ça a l'air très compliqué. –
Dai
@Dai - il s'agit d'une liaison 'RelativeSource' à une propriété' ICommand' sur le 'DataContext' de' ClientsSummaryView' où cette colonne est ajoutée. Cette question posée sur ces types de liaisons, et nous l'espérons, vous aidera à mieux le comprendre: http://stackoverflow.com/questions/84278/how-do-i-use-wpf-bindings-with-relativesource/84317#84317 –