Creé un conjunto de biblioteca de clases en el que creé controles personalizados, y definí los estilos predeterminados en el archivo generic.xaml.Los estilos de generic.xaml no se aplican
Parece que este es un problema bastante común, siempre y cuando muchas personas lo publiquen. Sin embargo, no pude encontrar ninguna respuesta útil para mi caso.
- the generic.xaml se encuentra en la carpeta Temas.
- el archivo generix.xaml Build Action está establecido en Page.
- ThemeInfo está definido correctamente en mi AssemblyInfo.cs.
En mi aplicación de prueba, si puedo combinar manualmente el archivo generic.xaml de mis controles personalizados conjunto en la aplicación App.xaml archivo de la siguiente manera:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/MyControlsAssembly;component/Themes/generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
continuación, los controles personalizados son adecuadamente temático, pero si no fusiono manualmente el generic.xaml, los controles aparecen con el tema predeterminado de Windows.
¿Podría decirme qué estoy olvidando y/o estoy equivocado?
Otros detalles:
Mi ThemeInfo atributo de ensamblado se define de la siguiente manera:
[assembly: ThemeInfo(ResourceDictionaryLocation.SourceAssembly, ResourceDictionaryLocation.SourceAssembly)]
(Nota: el resultado es el mismo con cualquier combinación de parámetros para el atributo ThemeInfo)
Hay otros dos archivos .xaml junto al archivo generic.xaml en la carpeta Temas.
- Hay una subcarpeta en la carpeta Temas que a su vez contiene otro archivo .xaml.
Do usted todavía tiene DefaultStyleKeyProperty en un constructor estático en sus controles personalizados? – Nogusta
¿Alguna suerte descubriendo esto? Casi tengo exactamente lo mismo con mi ensamblaje de controles personalizados. Si agrego una referencia en App.config al archivo generic.xaml, los controles son temáticos. Si dejo esto, no consigo nada. –
¿Es válido este enlace? http://social.msdn.microsoft.com/Forums/vstudio/en-US/2e1fb162-e828-4fd9-832f-d2791c1980b4/isnt-genericxaml-supposed-to-loaded-automatically Tomé estoy enfrentando el mismo problema, y creo que esta es la causa raíz –