我已经开始了一个新项目(重构一些代码),并且无法解决为什么我一直收到“无法找到页面/索引”错误。代码工作正常,直到我使用添加方法(在任何集合类型上)。所以我认为导航没有问题,但是我的IndexViewModel类存在问题。
公共部分类索引:Page { 私有IndexViewModel _vm;
public Index()
{
InitializeComponent();
_vm = new IndexViewModel();
...
public class IndexViewModel //: ViewModelBase
{
public SortableCollectionView Rows {get;set;}
public IndexViewModel()
{
// generate some dummy data
Random rand = new Random();
for (int i = 0; i < 200; i++)
{
Row row = new Row();
row["stuff"] = s_names[rand.Next(s_names.Length)];
**Rows.Add(row);**
}
}
答案 0 :(得分:0)
看起来你永远不会新建你的Rows变量。
Rows = new SortableCollectionView();
要了解实际错误,您可以使用我在another question上的答案中复制的这个技巧:
要查看问题,您需要对MainPage.xaml.cs进行一次更改:
// If an error occurs during navigation, show an error window
private void ContentFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
{
Exception ex = e.Exception;
while (ex.InnerException != null)
{
ex = ex.InnerException;
}
e.Handled = true;
ChildWindow errorWin = new ErrorWindow(ex);
errorWin.Show();
}
在启动应用程序时进行了更改后,您应该看到异常,而不是发生异常的页面。
答案 1 :(得分:0)
你需要
Rows = new SortableCollectionView();
代码中的某处。