J'ai Viewbox:Contenu d'un style de bouton apparaît uniquement dans un cas Bouton
<Viewbox x:Key="SampleViewbox" >
<Grid>
<Ellipse Stroke="#e2e2e0" StrokeThickness="6" Fill="#d5273e" Width="128" Height="128"/>
</Grid>
</Viewbox>
J'INCLUDE, alors cela dans un style comme:
<Style x:Key="SampleStyle" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="Transparent" >
<ContentPresenter Content="{StaticResource SampleViewbox}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Maintenant, je créé de nombreux boutons avec SampleStyle
<Grid>
<StackPanel>
<Button Style="{StaticResource SampleStyle}" Height="50" Width="50"></Button>
<Button Style="{StaticResource SampleStyle}" Height="80" Width="80"></Button>
<Button Style="{StaticResource SampleStyle}" Height="20" Width="20"></Button>
</StackPanel>
</Grid>
Cependant, un seul bouton a l'Ellipse (viewbox)
Comment puis-je faire tous les boutons ont/montrent l'ellipse ?? Viewbox est FrameworkElement qui ne peut pas appartenir à plusieurs parents.
Merci cela a fonctionné. J'avais essayé ça dans Kaxaml mais ça a jeté quelques erreurs. Je l'ai essayé maintenant dans Visual Studio et cela a bien fonctionné. Y at-il des inconvénients du drapeau x: Shared = "False"? – Sabz
@Sabz, les inconvénients? La valeur par défaut est 'x: Shared =" True "', dans la plupart des cas, on ne veut pas créer plusieurs copies d'objets (par exemple, des ressources de pinceau, des convertisseurs). mais voici le cas contraire, c'est le comportement souhaité – ASh