导航到继承页面的页面时出现TypeLoadException

时间:2015-04-07 10:00:18

标签: c# wpf windows-runtime windows-phone-8.1 win-universal-app

当我尝试导航到自定义页面时,我收到了TypeLoadException。

这是基类:

public abstract partial class MyBasePage : Page
{
    // Some abstract methods and some View-level stuff
}

另一堂课:

public sealed class MyCustomPage : MyBasePage 
{
    public MyCustomPage() : base()
    {
        // Some stuff
    }

    // Methods implementations
}

注意:我也尝试删除抽象修饰符(我用虚拟方法替换了我的抽象原型,只是抛出一个NotImplementedException,所以我在派生类中得到了相同的结果),但我仍然得到完全相同的TypeLoadException。

这是我得到的消息:

  

"找不到Windows运行时类型' Windows.Foundation'。"

这就是StackTrace

   at System.StubHelpers.WinRTTypeNameConverter.GetTypeFromWinRTTypeName(String typeName, Boolean& isPrimitive)
   at System.StubHelpers.SystemTypeMarshaler.ConvertToManaged(TypeNameNative* pNativeType, Type& managedType)
   at Windows.UI.Xaml.Controls.Frame.Navigate(Type sourcePageType, Object parameter)
   [...]

我错过了什么吗?当我继承Page类时,我想我可能搞砸了一些东西,但我无法找到错误,编译器也没有显示任何警告。

感谢您的帮助!

塞尔吉奥

更新:所以看起来在Windows应用商店应用中,XAML没有被编译,并且UI是在运行时生成的(通过解析XAML我猜),所以它'实际上不可能继承XAML。 是不可能做这样的事情,并且我必须在两个不同的页面中复制/粘贴相同的XAML,或者根据上下文创建具有不同方法的单个页面,或者是否有另一种方式来共享"分享& #34;跨不同页面的相同UI? 我需要的是获得相同的UI,但有两个不同的类(我的导航方法需要不同的类型)。

0 个答案:

没有答案