我正在使用FormBase.cs
继承的WPF表单,其类型为Window
。现在我用这个创建的FormBase.cs
基类改变普通表单继承。但现在问题是每次使用FormBase.cs
继承的部分类会自动更改为默认继承,在表单的每个更改中都是Windows
。我找到了
' Wpf_Fomrs.MainWindow'的部分声明不得指定不同的基础
编译代码时出现此错误。
代码:
[System.ComponentModel.DesignerCategory("")]
public class FormBase : Window, IFormBase // Base class
{
}
[System.ComponentModel.DesignerCategory("Form")]
public partial class MainWindow : FormBase // Created normal form
{
}
//Auto generated partial class which again inherited with `Window` class
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
}
// I want this result every time.
public partial class MainWindow : System.Windows.Markup.IComponentConnector {
}
使用Win Forms时我没有发现这样的问题。 WPF表单中的代码生成逻辑有什么问题?
修改
MainWindow
的XAML看起来像
<Window x:Class="Wpf_Forms.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Form1" Height="350" Width="525" SizeToContent="WidthAndHeight" xmlns:my="clr-namespace:Foundation.ControlsWpf;assembly=Foundation" Loaded="Window_Loaded" Topmost="True" WindowState="Maximized">