Silverlight 4: temas / estilos para toda aplicación sin necesidad de utilizar kit de herramientas de cambio

StackOverflow https://stackoverflow.com/questions/3807223

Pregunta

Nos estamos embarcando en nuestro primer proyecto de Silverlight, que viene de WPF. Es un portal web relativamente simple y nos gustaría referencias evitar el juego de herramientas, dada nuestra experiencia con el kit de herramientas de WPF.

No soy mucho de un codificador y tienen un par de preguntas relacionadas con los temas:

  • estilos implícitos hacer esto más fácil. Parece que acaba de borrar podría cambiar hacia fuera diccionarios de recursos para cambiar el tema. ¿Cómo puedo hacer esto sin depender de la Caja de Herramientas?

  • ¿Cómo se aplico los estilos para toda la aplicación, al igual que en WPF, en lugar de envolver las cosas en los contenedores temáticos? Veo que hay un ApplicationThemeURI puede utilizar, pero que requiere el kit de herramientas.

Gracias.

¿Fue útil?

Solución

Sólo una nota en la Siverlight Toolkit. La última vez que utiliza el kit de herramientas de WPF (que fue hace un tiempo), me dio la impresión de que era más o menos opcional. Yo no diría que el mismo se puede decir del juego de herramientas. Se añade una gran cantidad de funcionalidad importante que sería difícil de aplicar por su cuenta, y aunque no está libre de errores, que es bastante fiable. No puedo dar fe de todos los aspectos de la misma, sino que lo está utilizando ampliamente en un proyecto de Silverlight grande (~ 30K líneas de código), y nos resulta indispensable. A menos que seas consciente de los problemas específicos que su proyecto se encontraría, yo recomendaría que replantearse su decisión de no utilizarlo.

Otros consejos

La aplicación de estilo a toda aplicación es una tarea sencilla en Silverlight 4. Pon este código en App.xaml o temas / generic.xaml:

<!-- Sample style for each button in the application -->
<Style TargetType="Button">
</Style>

Este artículo podría ayudarle a: http://www.silverlightshow.net/items/Implicit-Styles -in-Silverlight-4.aspx

Puede cambiar el diccionario de recursos de esta manera:

var dict = Application.Current.Resources.MergedDictionaries.FirstOrDefault(rd => rd.Source == new Uri("Dictionary1.xaml", UriKind.Relative));
if (dict != null)
     dict.Source = new Uri("Dictionary2.xaml", UriKind.Relative);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top