2010-10-06 28 views
1

我在Silverlight应用程序中有两个框架。如何从silverlight框架加载aspx页面?

一个框架包含一个TreeView控件。当用户点击其中一个TreeView的项目时,我想要一个ASPX页面加载到下一个框架中。

我该如何做到这一点?

回答

0

通过aspx我假设你的意思是一个由aspx页面调用产生的HTML页面。您可以使用SL4中引入的网络browser control,但我认为它仅适用于OOB模式。

+1

关于WebBrowser控件首先要说的是它仅在Silverlight Out中起作用-Of-Browser应用程序(SLOOB) – 2010-10-06 11:52:01

+1

这正是我所做的,不是吗? – 2010-10-06 12:42:02

0

您可以使用下面的在不同的浏览器框架,以用户点击一个反应上的Silverlight树型视图打开任何网址:

XAML

<sdk:TreeView Name="_tree" SelectedItemChanged="Tree_SelectedItemChanged" /> 

C#

private void Tree_SelectedItemChanged(object sender, 
             RoutedPropertyChangedEventArgs<object> e) 
{ 
    var selection = e.NewValue; 

    // Extract URL from selected tree node, perhaps 
    var url = ... 

    var uri = new Uri(url); // Absolute URL 
    // var uri = new Uri(url, UriKind.Relative); // Relative URL 

    // Get the name of the frame in which to display the page from somewhere 
    var frameName = ... 

    HtmlPage.Window.Navigate(uri, frameName); 
}