我已经重命名了引用类的名称空间,WPF编译器不想将其考虑在内:它在.g.cs文件中保留MyOldNameSpace的前缀:
[System.CodeDom.Compiler.GeneratedCodeAttribute
("PresentationBuildTasks", "4.0.0.0")]
public partial class MyClass:
MyOldNameSpace.MyReferencedClass,
System.Windows.Markup.IComponentConnector {
为什么?如何解决这个问题?什么是这个模糊的.g.cs文件?
答案 0 :(得分:21)
您似乎没有更改MyClass.xaml
文件。应该有这样的东西
<MyClass x:Class="MyOldNameSpace.MyReferencedClass"
但应该是“我的新 NameSpace.MyReferencedClass”
答案 1 :(得分:7)
关闭.g.cs文件。你甚至可以删除它。
g表示生成,VS在此部分类中生成代码和Xaml之间的连线。
清理解决方案并重建。那应该解决它。
答案 2 :(得分:2)
不要忘记更改Generic.xaml文件,
<ResourceDictionary
xmlns:local="clr-namespace:MyOldNameSpace">
</ResourceDictionary>
答案 3 :(得分:2)
在我的情况下删除obj文件夹修复了错误。
答案 4 :(得分:2)
同时在Application.xaml中检查xmlns:local。这让我有一段时间......
答案 5 :(得分:1)
也许另一种情况是你的xaml的构建动作不是“Page”而是其他选项。