使所有图像具有相同的大小和边距
Making all images be of the same size and margin
我注意到我在堆栈面板中有一些图像,并且每个图像都完全设置了相同的大小、边距、对齐方式等。我不想为样式创建一个全局资源。是否可以在 这个特定的 面板中声明一个本地样式并且只针对图像(TargetType 在这种情况下就足够了)?
我想要 this solution 除了我不使用全局样式资源之外的东西。
<StackPanel.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="24" />
...
</Style>
</StackPanel.Resources>
<Image Source="{StaticResource Poof}"
VerticalAlignment="Top"
...
Margin="20,20,20,0" />
只需将样式放入面板的资源中,它将应用于面板内该类型的所有项目。
例如:
<StackPanel>
<StackPanel.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Width" Value="200" />
</Style>
</StackPanel.Resources>
<TextBox Margin="20" />
<TextBox Margin="20" />
<TextBox Margin="20" />
<TextBox Margin="20" />
</StackPanel>
所有文本框的宽度均为 200 个单位。
除非您使用单个项目的设置覆盖样式。也许你正在这样做?
尝试在资源中添加样式。
<Page.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="80"/>
<Setter Property="Height" Value="80"/>
</Style>
</Page.Resources>
我注意到我在堆栈面板中有一些图像,并且每个图像都完全设置了相同的大小、边距、对齐方式等。我不想为样式创建一个全局资源。是否可以在 这个特定的 面板中声明一个本地样式并且只针对图像(TargetType 在这种情况下就足够了)?
我想要 this solution 除了我不使用全局样式资源之外的东西。
<StackPanel.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="24" />
...
</Style>
</StackPanel.Resources>
<Image Source="{StaticResource Poof}"
VerticalAlignment="Top"
...
Margin="20,20,20,0" />
只需将样式放入面板的资源中,它将应用于面板内该类型的所有项目。
例如:
<StackPanel>
<StackPanel.Resources>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Width" Value="200" />
</Style>
</StackPanel.Resources>
<TextBox Margin="20" />
<TextBox Margin="20" />
<TextBox Margin="20" />
<TextBox Margin="20" />
</StackPanel>
所有文本框的宽度均为 200 个单位。
除非您使用单个项目的设置覆盖样式。也许你正在这样做?
尝试在资源中添加样式。
<Page.Resources>
<Style TargetType="Image">
<Setter Property="Width" Value="80"/>
<Setter Property="Height" Value="80"/>
</Style>
</Page.Resources>