Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 导航到继承页面的页面时发生TypeLoadException_C#_Wpf_Windows Runtime_Windows Phone 8.1_Win Universal App - Fatal编程技术网

C# 导航到继承页面的页面时发生TypeLoadException

C# 导航到继承页面的页面时发生TypeLoadException,c#,wpf,windows-runtime,windows-phone-8.1,win-universal-app,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() {

当我尝试导航到自定义页面时,遇到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,或者根据上下文使用不同的方法创建一个页面,或者是否有其他方法在不同的页面上共享相同的UI?
我需要的是获得完全相同的UI,但对于两个不同的类,我需要不同的类型作为我的导航方法。

不确定如果不编译,它是否会编译,但您是否更改了相关XAML文件中的页面类型?@KooKiz是的,XAML文件中的基类名称与其.cs文件中的名称相同,我的派生类没有XAML文件,它只是从基类继承并重写了一些方法。这可能就是问题所在。您应该尝试一个带有XAML文件的派生类,看看是否有相同的文件issue@KooKiz是的,但我尝试这样做的原因不是将相同的XAML复制并粘贴到两个不同的文件中,因为我需要在两个不同的页面中使用相同的UI。我更新了我的问题:使用模板控件自定义控件而不是页面/用户控件如何?