Попытка получить WPF UserControl для наследования класса - PullRequest
0 голосов
/ 23 февраля 2012

В моем приложении WPF есть четыре элемента UserControl - например,

VisualA, VisualB, VisualC, VisualD

Я хочу, чтобы каждый из них должен был наследовать универсальный класс Player, содержащий кучуобщего кода.например, методы, таймеры и т. д.

До сих пор это то, что я пробовал в 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 'одного из его других частичных типов

Что я делаю неправильно?

IБыло также впечатление, что любой код (т. е. методы) внутри унаследованного класса (Player) сможет получить доступ к элементам управления в UserControl путем ссылки по имени - это правильно?

1 Ответ

1 голос
/ 23 февраля 2012

Базовый класс в XAML по-прежнему установлен на UserControl. Измените его на Player. Также обратите внимание, что пространство имен для типа Player должно быть определено. то есть:

<BaseClasses:Player x:Class="VisualA"
        xmlns:BaseClasses="clr-namespace:MyProject.BaseClasses" 
        ... all your other namespaces used
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...