如何在一个表单中为所有TextBox控件设置Padding ="0"?

SQL*_*ice 2 wpf

有没有办法为Padding="0"WPF表单中的所有TextBox控件全局设置属性?

我找到了这篇文章: 为堆栈面板中的所有文本块设置样式

但我不想重复每个StackPanel的设置.我只想为整个表单全局设置一次.那可能吗 ?

Jam*_*urt 5

只需在XAML的资源中创建一个样式即可.

如果为样式创建键,则需要为每个TextBox编写Style = {}.如果你不创建样式键,它无论如何都会适用于所有地方!

<Window.Resources>
    <Style x:Key="textBoxStyle" TargetType="TextBox">
        <Setter Property="Padding" Value="0"/>
    </Style>
</Window.Resources>

<StackPanel>
    <TextBox Style="{StaticResource textBoxStyle}" Text="Hi"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

或者,如果您希望每个TextBox都受到影响:

<Window.Resources>
    <Style TargetType="TextBox">
        <Setter Property="Padding" Value="0"/>
    </Style>
</Window.Resources>

<StackPanel>
    <TextBox Text="Hi"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)