Навигация по страницам Silverlight - PullRequest
0 голосов
/ 21 февраля 2012

Я использую содержимое silverlight на странице aspx. Я создал страницу silverlight в отдельном проекте silverlight, и я добавил этот проект в свое обычное приложение asp.net ClientBin.i необходимо перенаправить на страницу aspx на моемПроект asp.net от нажатия кнопки страницы Silverlight. Как я могу добиться этого?

1 Ответ

1 голос
/ 21 февраля 2012

Я думаю, у вас есть один из двух вариантов. В вашей модели представления для этого элемента управления silverlight, во время инициализации, привяжите URI навигации для кнопки гиперссылки к желаемому URI, к которому вы хотите перейти. Вариант 2 (намного более плавный). В методе click вызовите метод javascript на странице, на которой размещен объект silverlight. Затем этот метод будет выполнять какой-то плавный переход jquery или просто простую навигацию для вас.
Вариант 1: <HyperlinkButton NavigateUri="{Binding DesiredURL}" TargetName="_blank" />

Для варианта 2 не забудьте включить:

с использованием System.Windows.Browser;

Вариант 2:

        public void OnFancyNavigate(string _destination)
    {
        //call the browser method/jquery method (I used constants to centralize the names of the respective browser methods
        try
        {
            HtmlWindow window = HtmlPage.Window;
            window.Invoke(Constants.TBrowserMethods.BM_FANCYNAVIGATE, new object[] { _destination});
        }
        catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); }
    }

Наконец, определите метод javascript в файле aspx / html / .js, в котором находится содержимое xap:

function fancyNavigate(_destination) {
//some fancy jquery or just the traditional document.location change here

}

C # найдет метод javascript при вызове из вашего кода, и вы должны хорошо идти

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