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