1

我正在构建一个 Silverlight 浏览器外应用程序,该应用程序最终将在 Windows 7 触摸屏平板电脑上运行,独立于任何浏览器 - 它将像任何其他应用程序一样运行。

目前,我的代码都在一个 XAML 和相应的 .cs 文件中,但这很混乱,我想将其拆分并在需要时调用每个页面,即 Main.xaml、AboutUs.xaml、Contact.xaml等等

这在 OOB 应用程序中可能吗?我尝试使用框架和页面控件,但是当我通过单击按钮将源设置为我的一个新 XAML 时,即“/AboutUs.xaml”,它告诉我这是一个无效的 URI。

谢谢,格雷格。

4

1 回答 1

1

尝试在 MainPage.xaml 中创建一个根画布(例如:myCanvas),作为显示所有页面的容器。

在导航点击时,写下这个。

myCanvas.Children.Clear();
myCanvas.Children.Add(new myPage());

一个好的做法是在每个页面上设置一个公共属性

public MainPage parentPage;

在这种情况下,您可以为其分配包含该根画布的父页面(如果是 myCanvas)。在更多页面上,您只需使用

parentPage.myCanvas.Clear();
anotherPage tempPage = new anotherPage();
tempPage.parentPage = parentPage;
parentPage.myCanvas.Add(tempPage);
于 2012-09-20T08:08:45.907 回答