2012-02-21 4 views
0

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

ответ

1

Я думаю, у вас есть один из двух вариантов. В вашей модели просмотра для этого элемента управления silverlight, во время инициализации, привяжите навигационный URI для кнопки гиперссылки к желаемому URI, к которому вы хотите перейти. Вариант 2 (намного более плавный): по методу кликов вызывается метод 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()); } 
    } 

Наконец, определить яваскрипта метод в ASPX/файл HTML/.js, на котором размещен контент XAP:

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

}

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

Смежные вопросы