Frage

Wie kann ich die TextWrapping jeder Zelle in einer WPF-Datagrid „NoWrap“? Ich verstehe die Zelle selbst nicht eine „TextWrapping“ Eigenschaft hat, aber ich mag das Eigentum an der Steuerung innerhalb der Zelle setzen.

Das Datagrid ich arbeite mit hat keine Spalten explizit definiert, ist das Ergebnis gesetzt wird, die Anzeige dynamisch ist.

Ich bin auf der Suche nach einer Lösung, ähnlich wie die in den Links versehen Antworten unten. Allerdings möchte ich nicht explizit die Zelle Stil / Vorlage außer Kraft zu setzen und die Steuerung definieren verwendet werden. Stattdessen würde ich sagen, wenn auch ein Textblock verwendet wird, setzen Sie seine TextWrapping Eigenschaft auf NoWrap.

WPF Toolkit Datagrid Zelle Textumbruch
Wie kann ich die Texthülle auf alle ermöglichen Spaltenüberschriften?

War es hilfreich?

Lösung

Bei den Ressourcen Ihres DataGrid-, können Sie einen alternativen Standardstil für Textblocks angeben. Dies sollte das tun, was Sie benötigen ( „ IF ein Textblock verwendet wird, setzen Sie seine TextWrapping Eigenschaft auf NoWrap “). Das wird nicht funktionieren, wenn die Textblocks explizit einen anderen Stil angeben, verwendet werden.

<DataGrid ...>
    <DataGrid.Resources>
        <Style TargetType="{x:Type TextBlock}">
            <Setter Property="TextWrapping" Value="NoWrap"/>
        </Style>
    </DataGrid.Resources>
    ...
</DataGrid>

(Ungeprüfte, da habe ich nicht von Visual jetzt richtig Studio.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top