c# - 的部分声明不得指定不同的基类

标签 c# wpf

我知道互联网上有这方面的信息,但我无法将其转化为我的情况。

我有一个 xaml 窗口,我收到错误消息:“GX3OpenStackupGUIPlugin.GX3OpenStackupGUIPlugin”的部分声明不得指定不同的基类 .

我背后的代码是:

public partial class GX3OpenStackupGUIPlugin : GX3ClientPlugin, IGX3PluginInterface
    {

我的 xaml 是:

<Grid xmlns:my="clr-namespace:CustomControls;assembly=MultiComboBox"   xmlns:extToolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit/extended"   x:Class="GX3OpenStackupGUIPlugin.GX3OpenStackupGUIPlugin"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

请有人指教:)

这是我找到但正在努力翻译的内容的链接... Partial declarations must not specify different base classes

在做了更多研究之后,我发现如果我更改我的代码以在我的 xaml 中实现顶级元素,它就会消除错误。这显然仍然是一个问题,因为我的代码隐藏类需要实现我设计的接口(interface)。

最佳答案

您链接到的问题包含答案。问这个问题的人是从这个开始的(有效):

<A x:Class="B">
public partial class B : A

然后他们将其更改为(无效):

<A x:Class="C">
public partial class C : B

这不起作用,因为在幕后,基于 XAML 生成了一个 .cs 文件,其中包含继承自 A 的分部类。要修复它,他们需要将其更改为:

<B x:Class="C">
public partial class C : B

所以在你的情况下,我相信你应该替换网格,即做这样的事情:

<namespace:GX3ClientPlugin x:Class="namespace.GX3OpenStackupGUIPlugin">
public partial class GX3OpenStackupGUIPlugin : GX3ClientPlugin

(我假设 GX3ClientPlugin 最终继承自 Grid 或 UserControl 之类的东西?)

关于c# - 的部分声明不得指定不同的基类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10414151/

相关文章:

c# - 无法使用 File.Move 创建已存在的文件

wpf - 为什么宽度 ="*"不适用于位于 RowDetailsTemplate 中的 DataGrid 中的列

c# - MVVM 界面框架

c# - 根据MVVM模式对gridview进行排序

c# - EntityFrameworkCore 不批处理插入

c# - 使用存储库的工作单元模式中的依赖注入(inject)

c# - 我们可以有一个返回类型与输入参数类型相同的泛型函数吗?

c# - 如何从命令行使用 msbuild 编译我的 C# 解决方案

wpf - 从 RadGridView WPF c# 中删除分组网格线

c# - 在 JSON 中保存目录路径?