从另一个cs文件中查找Silverlight Frame控件

时间:2011-12-02 18:02:18

标签: silverlight silverlight-4.0

我可以在Silverlight 4应用中说明第1页,其中一个面板中有Treeview,另一个面板中有Frame,可以导航到其他页面。 选择Treeview节点后,它会在UserControl cs文件中触发事件,该文件是Treeview的代码。 如何调用第1页中的Frame导航到另一个URI?

1 个答案:

答案 0 :(得分:0)

最简单的方法是将Name分配给Frame并通过自动生成的字段访问它。

如果我找对你,这应该有效:

用户控件的XAML:

<UserControl>
  <StackPanel>
    <StackPanel>
      <TreeView SelectionChanged="treeView_SelectionChanged"/>
    </StackPanel>

    <StackPanel>
      <!-- Additional Frame setup omitted for brevity -->
      <Frame x:Name="frame"/>
    </StackPanel>
  </StackPanel>
</UserControl>

用户控件的代码隐藏:

void treeView_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
  var targetUri = this.GetTargetUriFromSelectedItem(e); // TODO: implement your target uri retrieval logic
  this.frame.Navigate(targetUri);
}