WPF, стиль шрифта для нескольких элементов управления

Хорошо, я могу упустить что-то действительно простое, но я хочу использовать одно и то же семейство шрифтов, размер шрифта и цвет для нескольких элементов управления.

Есть ли способ создать один стиль для этого и применить разные элементы управления?

Извините, если об этом уже спрашивали. Спасибо

1 ответ

Решение

Все элементы управления находятся в одном контейнере? Например, в том же Window или же StackPanel? Если это так, вы можете установить эти свойства в родительском контейнере, и они будут применяться к любым дочерним элементам. Например:

<StackPanel TextBlock.FontFamily="Comic Sans"
            TextBlock.FontSize="14"
            TextBlock.Foreground="Purple">

    <TextBlock Text="Yeah, baby! I love me some Comic Sans!" />
    <Button Content="Me too!" />
</StackPanel>

Если вы хотите стандартизировать шрифт во всем приложении, вы можете использовать стиль имплицитов в файле App.xaml, например:

<Style TargetType="TextBlock">
    <Setter Property="FontFamily" Value="Comic Sans" />
    <Setter Property="FontSize" Value="14" />
    <Setter Property="Foreground" Value="Purple" />
</Style>

Я хотел добавить это для новичков (как и я).

Если вы хотите установить свойство для нескольких элементов в контейнере:

Вы можете установить "стиль" в "ресурсах" для элемента управления следующим образом:

<Grid>

    <Grid.Resources>
        <Style TargetType="TextBlock">
            <Setter Property="FontSize" Value="22"/>
        </Style>
    </Grid.Resources>

    <Grid.RowDefinitions>
        <RowDefinition/>
        <RowDefinition/>
        <RowDefinition/>
    </Grid.RowDefinitions>

    <TextBlock Grid.Row="0" Text="hello text" />
    <TextBlock Grid.Row="1" Text="hello text1" />
    <TextBlock Grid.Row="2" Text="hello text2" />

</Grid>
Другие вопросы по тегам