Introduction
In this article we will see how we can change theme dynamically in Silverlight
4.

Create Silverlight Application
Fire up Visual Studio 2010, and select Silverlight Project from the templates.
Name the solution as ChangeThemeSample.

We need to have System.Windows.Controls.Theming DLL reference, along with
the references of the Theme DLLs.

The following figure shows the assemblies to refer for themes.

As you see we have chosen all themes, but it's not necessary. You can take the
required themes as per your requirement.
Now let's create an User Control which will have the log in form.

We are not going to see any code behind for this User Control as it's only a
demo. So the design would look like the following.

Now, come back to MainPage.xaml, where we would place the user control along
with the Combo Box to populate the Themes.

The following is the xaml code for the above design.

Now, let's populate the themes into the Combo Box.
Let's have class called MyThemes, which would have the following properties.

Generate the list of themes in a list and bind it to the ItemsSource of the
Combo Box.

Now the important part, we need to handle the SelectionChanged event of the
Combo Box to change the whenever the selection changed.

That's it, we can now run the application.

As you see in the above display, all the themes are displayed.

After the selection the theme is changed.
This is only an example, how you can change the theme, you can use it more
interactive way.
Hope this article helps.
Join the conversation! Your thoughts help the community grow.
Sign in to leave a comment
It is the same account you read, post and publish with — and you will come straight back to this page.

Ravi SinghPosted Nov 21, 2011, 12:04 PM
i am a new bee for silverlight. can you please send the source code at my email [email protected]
cao daimingPosted Nov 8, 2010, 7:28 AM
if have child windows ,Aplication all page and ChildWindow changer Style?
mike mikePosted Oct 31, 2010, 11:34 PM
Hi, It's very nice article and it helps me a lot. But the question : if i add one more "No theme" item in combo box, and how to make it works properly. Thank you very much. Mike