我创建了一个WPF窗口
比我将其类定义修改为:
public partial class myWindow : mySubclassedWindow
编译器抛出:
“'myWindow'的部分声明不得指定不同的基类”
myWindow.Xaml:
x:Class="WpfGridtest.myWindow"
所以某处,还有另一个部分类,它继承自“Window”,但我找不到它。如何覆盖我的情况以使用子类窗口?
感谢Jon,这就是问题所在。 还找到了这篇有用的文章: http://geekswithblogs.net/lbugnion/archive/2007/03/02/107747.aspx
答案 0 :(得分:8)
这将在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();
}
}
}
这一切都没有问题。我想这就是你想要做的,对吧?