8
votes

WPF DataGrid Row Roqutihrough

J'utilise WPF DataGrid, je tiens à frapper conditionnellement, Tout comme mes travaux de code ci-dessous pour l'italique, je souhaite remplacer les italiques avec Strikethrough. Propriété = "textblock.textdecorations" valeur = "strikethrough" n'aide pas. J'ai 5 textcolumns et 1 templateColumn dans la DataGrid.

    <Style x:Key="abcRowStyle" TargetType="{x:Type DataGridRow}">
        <Style.Triggers>
            <DataTrigger Binding="{Binding IsActive}" Value="false" >
                <Setter Property="FontStyle" Value="Italic" />
            </DataTrigger>
        </Style.Triggers>
    </Style>


0 commentaires

3 Réponses :


4
votes

Voir cette question: WPF DataGrid, traverser la ligne

Mise à jour
Modifié le style de la liaison et la modifié en cas de barrage xxx


0 commentaires

2
votes

Avez-vous essayé d'ajouter une TextDecorationCollection explicite?


1 commentaires

@Wholsninja, rien à être désolé. Je suis désolé d'avoir posté la mauvaise réponse avant ...



11
votes

J'ai utilisé suivi sur TextBlocks, puis appliqué aux colonnes de texte individuelles, cela fonctionne. et appliqué en outre opacité = .5 sur DataGridrow conditionnellement. Cela semble bon! xxx


2 commentaires

Quand j'essaie ceci, je reçois "" textBlock "cibletype ne correspond pas à l'élément" DataGridCell "." exception. Pourriez-vous s'il vous plaît clarifier comment modifier TextDecoration sur le DataGridTextColumn


@conceptacid Je l'ai eu pour fonctionner en ajoutant ce qui suit au DataGridTextColumn: ElementStyle = "{staticresource par défaut de type}