7

我创建了一个 WPF 窗口

比我将其类定义修改为:

public partial class myWindow : mySubclassedWindow

编译器抛出:

“'myWindow' 的部分声明不得指定不同的基类”

我的窗口.Xaml:

x:Class="WpfGridtest.myWindow"

所以在某个地方,还有另一个部分类,它继承自“Window”,但我找不到它。如何覆盖我的案例以使用子类窗口?


谢谢乔恩,这就是问题所在。还发现了这篇有用的文章: http: //geekswithblogs.net/lbugnion/archive/2007/03/02/107747.aspx

4

1 回答 1

10

这将在其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();
        }
    }
}

这一切都没有问题。我想这就是你想做的,对吧?

于 2010-07-07T18:47:56.020 回答