试图让WPF UserControl继承一个类

时间:2012-02-23 13:42:25

标签: wpf inheritance user-controls

我的WPF应用程序中有四个UserControl - 例如

VisualA,VisualB,VisualC,VisualD

我希望他们每个人都需要继承包含一堆共享代码的通用“Player”类 - 。例如方法,计时器等

到目前为止,这是我在Control的XAML中尝试的内容

<UserControl x:Class="VisualA"

以下是我在单独的类文件中的内容。

Partial Public Class VisualA
    Inherits Player
End Class

Public Class Player
    Inherits UserControl
End Class

在我的窗口中,我正常引用UserControl:

<local:VisualA></local:VisualA>

但是,我收到以下错误:

  

为类指定的基类'System.Windows.Controls.UserControl'   'VisualA'不能与其中一个的基类'Player'不同   其他部分类型

我做错了什么?

我还认为继承类(Player)中的任何代码(即方法)都可以通过名称引用来访问UserControl中的控件 - 这是正确的吗?

1 个答案:

答案 0 :(得分:1)

XAML中的基类仍设置为UserControl。将其更改为播放器。另请注意,必须定义Player类型的命名空间。即:

<BaseClasses:Player x:Class="VisualA"
        xmlns:BaseClasses="clr-namespace:MyProject.BaseClasses" 
        ... all your other namespaces used