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>