从窗口的子类继承
本文关键字:继承 子类 窗口 | 更新日期: 2023-09-27 18:02:35
我有一个类型的窗口,我经常使用(有一个OK按钮和代码隐藏,只有当其他命令通过验证检查时才允许它被启用)。而不是必须复制粘贴代码后面的每个窗口,我创建的将有这个,我想创建这个ValidOKWindow,它继承窗口,并有我所有的其他窗口从它继承而不是。但是,我不能让它按原样工作。
我试过创建ValidOKWindow作为Window的子窗口,然后只替换其子类的代码继承:
public class WindowToInheritValidOK : ValidOKWindow
但是编译器会提示。xaml中不同的基类(
我已经尝试改变基类在。xaml以及
<ValidOKWindow x:Class="WPF.WindowToInheritValidOK"
但是WPF显然只允许自己的类作为。xaml中的基类。
由于c#不允许多个类继承,我不知道如何做到这一点…
对于包含在默认xml命名空间(xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
)下的基本框架本身之外的任何类型,您需要指定一个xml命名空间。对于代码中的自定义类型,通常使用xmlns
和clr-namespace
来完成。因此,如果您的Window
类在c#命名空间"WPF
"中声明,那么该行应该看起来像:
<local:ValidOKWindow x:Class="WPF.WindowToInheritValidOK" xmlns:local="clr-namespace:WPF"