有趣的是它起作用了。编译器没有代码问题,尽管这是我从未见过的(也许因为我是新手)。我想使用新继承的基本Page / class作为存储常用代码的地方,这样我就不必重复任何事情。在这里看看:
public sealed partial class HumanPage : SpeciesBasePage;
public sealed partial class AnimalPage : SpeciesBasePage;
public class SpeciesBasePage : Page;
显然,它可以工作,因为SpeciesBasePage实现了Page类。因此,您还将看到相关的XAML页面的开始标记将具有不同的基类:
<local:SpeciesBasePage
x:Class="PageInheritanceProject.HumanPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
...>
<Grid>
<TextBlock Text="Hello, world!" />
</Grid>
</local:SpeciesBasePage>
可以这样做吗?谢谢!
答案 0 :(得分:1)
这是一个相当标准的继承链。用C#术语来说。 有两件事要考虑。
1)
Pages的使用是许多商业团队都会质疑的事情。
许多团队根本不使用页面,而是使用用户控件(托管在contentcontrols中)。
2)
从页面继承。您不能继承xaml,为什么要继承一个可能是容器的UI控件?