Окно подклассов WPF - PullRequest
       1

Окно подклассов WPF

5 голосов
/ 07 июля 2010

Я создал окно WPF

чем я изменил определение класса:

public partial class myWindow : mySubclassedWindow

бросок компилятора:

«Частичные объявления myWindow не должны указывать разные базовые классы»

myWindow.Xaml:

x:Class="WpfGridtest.myWindow"

так что где-то есть другой частичный класс, который наследуется от "Window", но я не могу его найти. Как я могу переопределить мой случай, чтобы использовать подклассное окно?


спасибо Джон, в этом была проблема. Также нашел эту полезную статью: http://geekswithblogs.net/lbugnion/archive/2007/03/02/107747.aspx

1 Ответ

8 голосов
/ 07 июля 2010

Это было бы в объявлении самого myWindow - дизайнер будет генерировать вторую половину частичного типа на основе XAML на основе типа вашего элемента.

Вместо этого вы можете использовать элемент <mySubclassedWindow>, если вы дадите ему соответствующее пространство имен и ссылки на сборки.

РЕДАКТИРОВАТЬ: Хорошо, вот короткий пример, в проекте под названием WpfApplication. Мой Window подкласс:

using System.Windows;

namespace WpfApplication
{
    public class EnhancedWindow : Window
    {
    }
}

Мой XAML:

<y:EnhancedWindow x:Class="WpfApplication.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:y="clr-namespace:WpfApplication"
        Title="MainWindow" Height="350" Width="525">
</y:EnhancedWindow>

Мой частичный тип:

namespace WpfApplication
{
    public partial class MainWindow : EnhancedWindow
    {
        public MainWindow()
        {
            InitializeComponent();
        }
    }
}

Все это строит без проблем. Я думаю, это то, что вы хотели сделать, верно?

...