Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C# WPF Beginner Style
I would like to do something like this:
 
<Style TargetType="Control">
  <Setter Property="VerticalAlignment" Value="Center"></Setter>
</Style>
 
Is this possible? It doesn't work this way...
I know I could write for every control something like the following:
 
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource M<ControlBaseStyle}"/>
 
But I have 10 different controls and I don't really want to do this.
 
Any ideas?
 
Thank you!
Markus
Posted 22-Aug-12 3:18am

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

You can't do this, but you can create one style and then use it for other controls.
 
If you have the following Style
<Style x:Key="ControlBaseStyle" TargetType="{x:Type Control}">
    <Setter Property="Margin" Value="50" />
</Style>
 
You can target all Buttons for instance
 
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource ControlBaseStyle}"/>
 
You still need to add the style for each control type, but you can make it so the actual style is only there once.
  Permalink  
Comments
NeonMika at 22-Aug-12 9:26am
   
Okay, so I have to write down the "tree". Thanks for your answer, 5*.
Christian Graus at 22-Aug-12 9:27am
   
glad to help :-)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 _Amy 310
1 OriginalGriff 294
2 Nirav Prabtani 268
3 Sergey Alexandrovich Kryukov 211
4 CHill60 150
0 OriginalGriff 7,889
1 Sergey Alexandrovich Kryukov 7,006
2 Maciej Los 4,014
3 Peter Leow 3,708
4 CHill60 2,762


Advertise | Privacy | Mobile
Web02 | 2.8.140721.1 | Last Updated 22 Aug 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100