Как настроить гиперссылку Silverlight, которая на самом деле перемещается? - PullRequest
0 голосов
/ 19 октября 2010

В SL4 мне странно трудно понять, как заставить HyperlinkButton переходить на другую страницу Silverlight в том же приложении при нажатии.Структура:

<HyperlinkButton Content="Technical Information Screen" Height="23"
Name="hyperlinkButton1" Width="320" NavigateUri="/tis.xaml" />

«tis.xaml» находится в той же папке, что и MainPage.xaml, где находится эта кнопка.При нажатии на кнопку появляется «404 Not Found».

Если я изменю на то, что NavigateUri заполняется программно в конструкторе MainPage, как в:, как я делаю с не украшением с "/", а с UriKind, установленным в Absolute или RelativeOrAbsolute.Все это очень таинственно, но я знаю, что это должно быть как-то выполнимо, или зачем вообще контролировать?

Ответы [ 3 ]

2 голосов
/ 19 октября 2010

Поведение кнопки гиперссылки по умолчанию состоит в том, чтобы указывать браузеру другую страницу (т. Е. Целую другую страницу HTML).

Подробное описание навигации по страницам XAML в пределах одного приложения * здесь (Полагаю, вам нужно будет вызвать NavigationService.Navigate() в случае нажатия кнопки с гиперссылкой).

2 голосов
/ 22 апреля 2011

Вам необходимо установить свойство TargetName в HyperlinkButton на Имя навигации: элемент управления Frame, который вы хотите заполнить новой страницей.Сжатие до основ:

<UserControl ...
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation">
    <Grid>
        <HyperlinkButton Content="Technical Information Screen" NavigateUri="/tis.xaml" TargetName="ContentFrame"/>
        <navigation:Frame x:Name="ContentFrame"/>
    </Grid>
</UserControl>
0 голосов
/ 19 октября 2010

Скорее всего, проблема связана с форматом uri, попробуйте указать страницу aspx, содержащую элемент управления silverlight.

hyperlinkButton1.NavigateUri = new Uri ("http://foo.page.aspx");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...