我知道在互联网上有关于此的信息,但我在将其翻译成我的情况时遇到了问题.
我有一个xaml窗口,我得到错误:'GX3OpenStackupGUIPlugin.GX3OpenStackupGUIPlugin'的部分声明不能指定不同的基类.
我的代码背后是:
public partial class GX3OpenStackupGUIPlugin : GX3ClientPlugin, IGX3PluginInterface
{
Run Code Online (Sandbox Code Playgroud)
我的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">
Run Code Online (Sandbox Code Playgroud)
请有人建议:)
这是我找到的链接,但我正在努力翻译...... 部分声明不能指定不同的基类
在做了一点研究之后,我发现如果我改变我的代码来实现我的xaml中的顶级元素,它就会摆脱错误.这显然仍然是一个问题,因为我的代码隐藏类需要实现我设计的接口.
小智 8
您链接的问题包含答案.问这个问题的人是从这个开始的(哪个有效):
<A x:Class="B">
public partial class B : A
Run Code Online (Sandbox Code Playgroud)
他们把它改成了这个(这没用):
<A x:Class="C">
public partial class C : B
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为在幕后,基于包含从A继承的部分类的XAML生成.cs文件.要修复它,他们需要将其更改为:
<B x:Class="C">
public partial class C : B
Run Code Online (Sandbox Code Playgroud)
所以在你的情况下,我相信你应该替换Grid,即做这样的事情:
<namespace:GX3ClientPlugin x:Class="namespace.GX3OpenStackupGUIPlugin">
public partial class GX3OpenStackupGUIPlugin : GX3ClientPlugin
Run Code Online (Sandbox Code Playgroud)
(我假设GX3ClientPlugin最终继承自Grid或UserControl之类的东西?)
这将由两个(或更多)部分组成partial class。如果您搜索,您应该找到另一个 class GX3OpenStackupGUIPlugin,它可能指定类似Control基本类型的内容。您只查看文件的一部分。另一半可能需要从 xaml 下扩展。
问题是两个文件正在做这样的事情:
(归档第一个)
public partial class GX3OpenStackupGUIPlugin : GX3ClientPlugin, IGX3PluginInterface {}
Run Code Online (Sandbox Code Playgroud)
(归档第二个)
public partial class GX3OpenStackupGUIPlugin : SomethingElse {...}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14693 次 |
| 最近记录: |