当我尝试导航到自定义页面时,我收到了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,但有两个不同的类(我的导航方法需要不同的类型)。