Как установить стартовую страницу в Silverlight? Не уверен, что я ошибаюсь в неправильной терминологии или просто не упоминается нигде.
Приветствия
Как установить стартовую страницу в Silverlight? Не уверен, что я ошибаюсь в неправильной терминологии или просто не упоминается нигде.
Приветствия
Термин "Стартовая страница" несколько неоднозначен. В приложении Silverlight вы, вероятно, имеете в виду одну из нескольких вещей.
Начальный UserControl для загрузки в качестве RootVisual
В app.xaml.cs вы найдете код: -
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = new MainPage();
}
Где MainPage
- пользовательский элемент управления, который является исходным корневым визуальным. Вы можете изменить это по своему усмотрению.
Возможно, вы хотите установить RootVisual
в один из нескольких возможных вариантов. В этом случае вам нужно будет использовать InitParams
. Что-то вроде: -
private void Application_Startup(object sender, StartupEventArgs e)
{
Type t = Type.GetType("SilverlightApplication1." + e.InitParams["StartupPage"]);
this.RootVisual = Activator.CreateInstance(t);
}
Затем вам нужно включить значение InitParams в тег <object>
в хосте HTML: -
<object ...>
...
<param name="InitParams" value="StartupPage=Page1" />
</object
Использование рамки навигации
При создании навигационного приложения потребуется другой подход. В этом случае MainPage
будет содержать Frame
с Source
proeperty, который будет содержать исходный URL-адрес для сопоставления.
С помощью этого типа приложения вы можете указать альтернативные страницы для загрузки, просто добавив путь, следующий за # в URL-адрес страницы.