Domanda

C'è un modo semplice per modificare la dimensione del carattere di testa senza sovrascrivere completamente duplicare ColumnHeaderTemplate?

Nota. Non sono sicuro se sia rilevante, ma io uso un tema di applicazione (PresentationFramework.Royale), che fornisce il ColumnHeaderTemplate

È stato utile?

Soluzione

Se non si sta applicando anche uno stile per le intestazioni di colonna, si potrebbe usare quella. E anche se siete, impostando la proprietà BasedOn sullo stile si può mantenere tutto, ma ciò che si desidera modificare.

<ListView>
    <ListView.View>
        <GridView>
            <GridView.ColumnHeaderContainerStyle>
                <Style>
                    <Setter Property="TextElement.FontSize"
                            Value="32" />
                </Style>
            </GridView.ColumnHeaderContainerStyle>
            <GridViewColumn Header="Stuff"/>
            <GridViewColumn Header="More Stuff" />
        </GridView>
    </ListView.View>
</ListView>


Modifica
Non ho usato il costruito nel temi prima, quindi ho provato questo fuori. Il tema PresentationFramework.Royale non è in realtà applicando un modello per le intestazioni delle colonne. Si sta applicando uno stile che utilizza un setter per applicare la ControlTemplate come raccomandato .

Quindi, al fine di mantenere il tema Royale sulle intestazioni delle colonne abbiamo bisogno di utilizzare la proprietà BasedOn dello stile che abbiamo creato. Ecco il deffinition Style aggiornato che vi sia permetterà di modificare quello che ti piace, e mantenere il tema Royale:

<Style TargetType="{x:Type GridViewColumnHeader}" BasedOn="{StaticResource {x:Type GridViewColumnHeader}}">

Altri suggerimenti

Il GridViewColumnHeader è un controllo dei contenuti, quindi se si imposta il suo contenuto ad un TextBlock in cui il testo che si desidera è la dimensione corretta, la vita dovrebbe essere buona.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top