Je souhaite utiliser le style de la zone de texte Aero, mais remplace certaines propriétés. J'essaie d'y arriver par:Remplacer le style par défaut dans WPF TextBox, basé sur PresentationFramework.Aero
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Aero, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=MSIL;component/themes/aero.normalcolor.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style x:Key="{x:Type TextBox}" TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="Margin" Value="2" />
<Setter Property="Padding" Value="2" />
</Style>
</ResourceDictionary>
Cependant, il en résulte un StackOverflowException
lors du démarrage de mon application. Lorsque je supprime la référence à PresentationFramework.Aero, cela fonctionne, mais je reçois le style de système d'exploitation par défaut, ce qui rend l'application moche. Donc, en effet: si je veux remplacer un style sur toutes mes boîtes de texte, je ne peux pas obtenir le look Aero. Si je veux l'apparence Aero, je ne peux pas remplacer n'importe quel style. Impasse.
Un moyen de résoudre ce problème?
Dans votre commentaire réponse Roberts ci-dessous vous semblez insinuer que vous avez obtenu ce travail avec resourcedictionaries haut niveau. S'il vous plaît partagez ce que vous avez trouvé. – Oskar