Tengo varios proyectos Silverlight que me gustaría usar los mismos estilos, esquema de colores y algunos objetos con plantilla.Silverlight: proyecto múltiple que comparte los mismos archivos de estilo
¿Cómo puedo lograr esto?
Tengo varios proyectos Silverlight que me gustaría usar los mismos estilos, esquema de colores y algunos objetos con plantilla.Silverlight: proyecto múltiple que comparte los mismos archivos de estilo
¿Cómo puedo lograr esto?
Una forma de hacer esto sería crear una nueva biblioteca de clases silverlight que sería su conjunto de tema/estilo compartido al que se harían referencia en los otros proyectos de Silverlight. Este conjunto tendría uno o más archivos XAML Resource Dictionary que podrían definir todos sus estilos, pinceles y plantillas. Incluso podría configurar algunas jerarquías de estilos en cascada utilizando el atributo BasedOn de la clase Style.
Puede usar MergedDictionaries para combinar estos estilos en su aplicación, ya sea a nivel de aplicación a nivel de página.
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/SharedThemeAssembly;component/MyStyles.xaml"/>
...other ResourceDictionaries to merge in...
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
A continuación, hacer referencia a los estilos/cepillos compartidos como normalmente lo haría con cualquier otro StaticResource.
Hay dos opciones, primero porque Dan indica que puede crear una biblioteca compartida por los otros proyectos. Si los clientes acceden a varios de sus proyectos y sus proyectos utilizan el almacenamiento en caché de la biblioteca de aplicaciones, entonces se reduce el tamaño total de la descarga.
El otro enfoque es crear un diccionario de recursos en un proyecto, luego agregar el mismo archivo a los otros proyectos. Tenga en cuenta que, en el cuadro de diálogo Agregar elemento existente, el botón Agregar tiene una pequeña imagen desplegable, colóquela y luego seleccione "Agregar como enlace".
Esto deja el diccionario como un simple archivo Xaml. Una ventaja que puedo ver para esto es dejar realmente el archivo de diccionario fuera del Xap y simplemente colocarlo en la carpeta clientBin (o en cualquier carpeta en la que esté colocado el Xap). Este enfoque permite que todos los Xaps compartan el diccionario individual (de la misma manera que el primer enfoque) pero permite que el Xaml se modifique sin reconstrucciones desordenadas.
http://stackoverflow.com/questions/9215906/cant-find-my-styles-in-silverlight-5/9216046#9216046. ¿Me puedes ayudar con esto? – Vinicius
Ojalá pudiera votar esto dos veces :). – retrodrone