我在Silverlight应用程序中有两个框架。
一帧包含TreeView控件。当用户点击其中一个TreeView的项目时,我希望将ASPX页面加载到下一帧。
我怎样才能做到这一点?
答案 0 :(得分:0)
通过aspx,我认为你的意思是由aspx页面调用生成的HTML页面。您可以使用SL4中引入的网络browser control,但我认为它仅适用于OOB模式。
答案 1 :(得分:0)
您可以使用以下命令在不同的浏览器框架中打开任何URL,作为对用户点击Silverlight TreeViewItem的反应:
<强> 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);
}