继承的BaseDiagramPage上不存在已加载

时间:2017-07-28 13:47:35

标签: c# inheritance uwp

我有一个BaseDiagramPage类,它直接从Page继承。这个想法是它将在多个页面中保持共同的功能(让我知道这是否是一个不好的方法)。但我实施XAML的{​​{1}}类抱怨BaseDiagramPage不存在。如果我直接从this.Loaded类继承Page,它就可以正常工作。

XAML类几乎没有任何内容。

任何见解都将不胜感激。

BaseDiagramPage

编辑:

BaseDiagramPage来源

public sealed partial class EmptyPage : BaseDiagramPage
{
    public EmptyPage()
    {
        this.InitializeComponent();

        // this property does not exist, BaseDiagramPage is public
        this.Loaded += (sender, e) =>
        {
            // load something
        };
    }
}

编辑编辑:

使用namespace CoreProject.Pages { public class BaseDiagramPage : Page { } } 有效,但是这样吗?我想打电话给我的班级base.Loaded

Loaded

1 个答案:

答案 0 :(得分:1)

我认为您忘记更改EmptyPage XAML 部分,所以只需更改

<Page x:Class="xxx.EmptyPage" ...>
    ...
</Page>

<local:BaseDiagramPage x:Class="xxx.EmptyPage" ...>
    ...
</local:BaseDiagramPage>

执行此操作后,您甚至可以从 C#代码中删除继承,因为它现在已经冗余。所以以下就可以了。

public sealed partial class EmptyPage