Visual Studio WPF 生成相同的冲突部分 class 文件

Visual Studio WPF generating identical conflicting partial class files

我在 WPF 项目中有自定义用户控件。我的解决方案将不再编译。当我尝试在 clean/rebuild 之后构建/包含时(即使在删除 bin 和 obj 文件夹之后)VS 生成两个代码文件:control.g.vb 和 control.g.i.vb

这些文件中的代码包含部分 classes 连接到代码隐藏 class,并且两个生成的文件是相同的。 Visual studio 然后确定它们相互冲突,导致编译错误,例如 "Public Sub InitializeComponent() has multiple definitions with identical signatures" 它确实如此,一个在 control.g.vb 中,一个在 control.g.i.vb

发生了什么,它是如何发生的,我该如何解决?

我在google、SO、MSDN上搜索了所有我能想到的相关关键字。我发现最相关的建议涉及删除 bin 和 obj 文件并进行清理和重建,我已经尝试过了。

示例错误 错误 'Public Sub System_Windows_Markup_IComponentConnector_Connect(connectionId As Integer, target As Object)' 有多个具有相同签名的定义。 {解决方案文件路径}\obj\x86\Debug\Controls\user 控件{文件夹}{控件}.g.i.vb {项目}

简短回答:重命名 Visual Studio 中的文件时要非常小心。

我重命名了一些文件和 类,但没有找到对它们的所有引用。我有指向 类 的控件,这些控件的名称不同于它们自己的 code-behind 文件,并且 类 的名称与它们所在的文件不同。难怪 Visual Studio 糊涂了。