J'ai un DataGridTextColumn
dans un Silverlight 4 DataGrid
et je veux définir une valeur ToolTip sur la colonne qui est différente de la valeur liée.Créer une info-bulle sur Silverlight DataGridTextColumn qui est différent du contenu de la cellule liée
Je sais que je peux le faire avec une colonne basée sur un modèle assez facilement - mais cela ajoute une énorme quantité de XAML supplémentaire et la rend lourde à lire et à maintenir.
Cela fonctionne, mais beaucoup de code supplémentaire - surtout si jamais besoin de changer le modèle
<data:DataGridTemplateColumn Header="Name" Width="*">
<data:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock TextTrimming="WordEllipsis" Text="{Binding FullName}"
ToolTipService.ToolTip="{Binding Email}" Width="Auto" Margin="5" />
</DataTemplate>
</data:DataGridTemplateColumn.CellTemplate>
</data:DataGridTemplateColumn>
Je voudrais trouver une bonne façon de le faire soit avec un style ou héritée classe. Comme je l'ai dit, mon objectif principal est de réduire le ballonnement dans le XAML pour quelque chose d'aussi trivial qu'une infobulle de la meilleure façon possible.
Il existe quelques questions de stackoverflow similaires avec des solutions telles que this et this, mais elles affichent toutes deux la même valeur de l'info-bulle que le contenu de la cellule (par exemple, lorsqu'elle déborde). Bien que ce soit souvent ce que vous voulez, j'essaie de montrer une info-bulle différente du contenu de la cellule.
J'ai trouvé quelques sample code for an inherited class (faites défiler jusqu'à la fin), que j'ai essayé de modifier mais je suis resté bloqué parce que ma connaissance de XAML n'est pas à la hauteur et je ne veux pas passer toute la nuit là-dessus! Cet exemple particulier apparaît comme si cela fonctionnait, mais cela ressemble à un bidouillage et je pense qu'essayer de le modifier pour fonctionner avec deux propriétés de dépendance va être encore plus important.
PS. Je m'attendrais à ce qu'une sous-classe bien écrite me facilite la liaison d'autres propriétés telles que TextTrimming.
merci, mais si je veux lier à quelque chose d'autre que le courrier électronique –
Il vous allez, il a fallu une certaine créativité bien, peut-être pas optimal, mais c'est bon :-) –
Juste un petit commentaire, mais je ne pensais pas que Silverlight supportait le 'x: Type' dans le' TargetType'? –