Чтобы использовать UserControl из любой другой части вашего XAML, сделайте следующее: В вашем MainPage.xaml сначала вы должны добавить локальное пространство имен.В части
<UserControl xmlns ... >
добавьте следующее:
<UserControl xmlns ... xmlns:local="clr-namespace:YourLocalNameSpace">
Это будет в основном автоматически выполнено для вас, если вы используете VS2008 / VS2010 или Blend.(Точки означают, что там много кода, который не имеет значения)
Как только у вас есть ссылка на локальное пространство имен.Вы можете добавить свой другой пользовательский элемент управления, например, так:
<local:YourCustomUserControl />
Опять же, это будет автоматически завершено для вас, если вы правильно поняли xmlns: local part. Expression Blend .В основном это интерфейс перетаскивания / перетаскивания / щелчка, который будет выполнять для вас подобные сложные операции XAML.
Идея в Silverlight, похожая на ASP.NET MasterPage, - это шаблоны управления.Я не буду вдаваться в подробности, потому что эта статья объясняет это довольно хорошо: http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-7-using-control-templates-to-customize-a-control-s-look-and-feel.aspx
В качестве альтернативы, предположим, что вы строили окно с несколькими страницами.Вы хотите создать какой-нибудь Chrome и меню, которое будет работать независимо от того, какую страницу окна вы просматриваете.Вы можете создать UserControl, который является «рамкой» для ваших других UserControls.Этот фрейм содержит Chrome и меню, и он является контейнером для ваших других пользовательских элементов управления.
Здесь есть много способов выбора.Вам решать.:)