我有这些文件。
" Control.cs" [这有方法activateabc()]和" abc.xaml"在程序集(创建为类库)中,我已在我的工作项目(Windows Phone 8.1运行时应用程序)中引用它。我已经添加了
Frame.Navigate(typeof(abc))
中activateabc()
,当我从工作项目调用activateabc()时,它会抛出XAMLPARSEEXCEPTION。
任何想法如何导航到另一个程序集中的XAML页面?此外,我的任何装配名称中都没有任何点或夸大或下划线。
编辑:NavigationService.Naivage()
在Windows Phone 8中可用于执行此任务。但是,Frame.Navigate()
允许导航到类型而不是WP8中的URI。那么请告诉我如何在 Windows Phone 8.1运行时应用程序
答案 0 :(得分:0)
您能提供更多信息吗?我没有答案,但我确实有一些可能有帮助的其他信息。
你知道它是否无法解析xaml标记,或者它是否真的未能找到abc.xaml文件?我敢打赌这是真正的问题。如果找不到该文件,则可能需要修改xaml文件Uri以包含程序集名称。我不知道如何覆盖页面的默认文件加载位置,因为该代码生成但是Uri看起来像这样。
如果您的程序集是MyCustomControls.dll,那么Uri将是新的Uri(“ms-appx:///MyCustomControls/abc.xaml”)。
如果找到你的xaml文件但是某些标记失败,你可能会尝试注释掉所有标记,直到没有加载失败,然后逐位注释它,直到你发现哪个标记位似乎是问题。它可能是应用程序的xamltypeinfo.g.cs中的一些名称空间解析问题。我怀疑这是问题,因为你说你添加了程序集作为参考。
我希望上面的一些信息很有用。