Menindaklanjuti saran Sergey, Anda dapat menentukan dan menggunakan kembali seluruh Gaya (dengan berbagai setter properti, termasuk Margin) alih-alih hanya objek Ketebalan:
<Style x:Key="MyStyle" TargetType="SomeItemType">
<Setter Property="Margin" Value="0,5,0,5" />
...
</Style>
...
<StackPanel>
<StackPanel.Resources>
<Style TargetType="SomeItemType" BasedOn="{StaticResource MyStyle}" />
</StackPanel.Resources>
...
</StackPanel>
Perhatikan bahwa trik di sini adalah penggunaan Style Inheritance untuk style implisit, yang diturunkan dari style di kamus sumber daya luar (mungkin digabung dari file XAML eksternal).
Sidenote:
Pada awalnya, saya secara naif mencoba menggunakan gaya implisit untuk mengatur properti Style dari kontrol ke sumber daya Style luar (katakanlah didefinisikan dengan kunci "MyStyle"):
<StackPanel>
<StackPanel.Resources>
<Style TargetType="SomeItemType">
<Setter Property="Style" Value={StaticResource MyStyle}" />
</Style>
</StackPanel.Resources>
</StackPanel>
yang menyebabkan Visual Studio 2010 segera ditutup dengan kesalahan CATASTROPHIC FAILURE (HRESULT: 0x8000FFFF (E_UNEXPECTED)), seperti yang dijelaskan di https://connect.microsoft.com/VisualStudio/feedback/details/753211/xaml-editor-window-fails -dengan-bencana-kegagalan-ketika-gaya-mencoba-untuk-mengatur-gaya-properti #