【问题标题】:Partial declarations of 'Triangle.MainWindow' must not specify different base classes'Triangle.MainWindow' 的部分声明不得指定不同的基类
【发布时间】:2014-08-28 02:04:55
【问题描述】:

我遇到了一个错误,告诉我部分声明不能指定不同的基类。

public partial class MainWindow : Shape
    {
        public MainWindow()
        {
            InitializeComponent();
            this.Stretch = System.Windows.Media.Stretch.Fill;
            this.StrokeLineJoin = PenLineJoin.Round;
        }

我收到错误来自:

public partial class MainWindow : Shape

“MainWindow”给了我关于指定不同基数的错误。我该如何纠正这个错误?

目前我的 XAML 是默认的:

   <Window x:Class="Triangle.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>

    </Grid>
</Window>

我还没有从 XAML 中编辑任何东西,因为这些代码是我从网上某处找到的代码,并且正在使用它来测试它是否有效。

【问题讨论】:

    标签: c# .net wpf shapes


    【解决方案1】:

    MainWindow 通常扩展 Window

    因此,在您的代码隐藏中,您将看到 public partial class MainWindow : Window,在您关联的 XAML 中,您将看到如下内容:

    <Window x:Class="WpfApplication1.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            ... />
        ...
    </Window>
    

    要扩展另一个类(不确定Shape 是什么,但我假设它在这种情况下是合适的),除了代码隐藏之外,您还必须更正您的 XAML... 像这样:

    <Shape x:Class="WpfApplication1.MainWindow"
           xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
           xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
           ... />
        ...
    </Shape>
    

    【讨论】:

      【解决方案2】:

      MainWindow : Shape?我想应该是MainWindow : Window

      请从MainWindow.xaml 的设计者那里验证基类(根元素)并在此处使用相同的基类。

      通常顶级窗口类,如默认MainWindow 类派生自Window。而在你的情况下,我可以看到它来自Shape

      如果您尝试创建一个形状类,那么形状类中没有InitializeComponent(),它不需要设计器,因此不需要部分类。最后但并非最不重要的一点是,类名MainWindow 听起来不是一个好名字。你也许可以修改它。

      【讨论】:

        【解决方案3】:

        你的主页应该是格式

        public sealed partial class MainPage : Page 
        

        仅继承 Page Class。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多