J'ai ajouté des styles personnalisés à l'app.xaml.
J'ai créé un dictionnaire de ressources externes (que j'attache dans les dictionnaires fusionnés de l'app.xaml) et lorsque j'essaie d'utiliser l'un des styles nommés ci-dessus dans le dictionnaire rcource, il me dit qu'il n'y a pas de tel style.
De même, les styles par défaut (c'est-à-dire les styles sans nom qui s'appliquent à l'ensemble de l'application) ne s'appliquent pas aux éléments du modèle.
Note : L'action de construction des modèles est "Page".
Voici un exemple de la façon dont mon code est écrit :
<Application x:Class="Application"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
ShutdownMode="OnExplicitShutdown">
<Application.Resources>
<ResourceDictionary>
<Style
x:Key="StackPanelStyle"
TargetType="StackPanel"
BasedOn="{StaticResource {x:Type StackPanel}}">
<Setter Property="Margin" Value="5"/>
<Setter Property="Orientation" Value="Horizontal" />
<Setter Property="Height" Value="40"/>
</Style>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Templates/DataTemplate1.xaml"/>
<ResourceDictionary Source="/Templates/DataTemplate2.xaml"/>
<ResourceDictionary Source="/Templates/DataTemplate3.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
Voici un exemple de modèle de données :
<DataTemplate DataType="{x:Type Entity}" x:Key="NameDataTemplate">
<Expander>
<StackPanel>
<--The following line produces: StackPanelStyle was not found.-->
<StackPanel Style="{StaticResource StackPanelStyle}">
<Label Content="Name:"/>
<TextBox Text="{Binding Name}"/>
</StackPanel>
</StackPanel>
</Expander>
</DataTemplate>
Des idées ? Dois-je fusionner les dictionnaires d'une autre manière ?