wpf - 更改 UserControl 文件中的命名空间后,...g.cs 文件出现错误

标签 wpf

我从另一个 WPF 项目复制了三个类,然后更改了它们的命名空间

现在,当我运行该项目时,我在“.g.cs”文件中收到错误,表明命名空间不正确。我更改了此命名空间,但是当我再次编译并运行时,“.g.cs”文件会重新生成并被旧命名空间版本覆盖,我再次收到错误。

这些文件是什么,如何使它们从当前文件重新生成,而不是明显保存在某处的某些缓存?

我删除了\bin 和\obj 目录并重建,但仍然出现错误。

最佳答案

.g.cs 文件是从 .xaml 文件生成的。您需要更改 .xaml 文件中的 x:class= 属性以匹配新的命名空间限定类名;那么 .g.cs 将在下次编译时正确生成。 (不要手动更改 .g.cs 文件 - 你只会让自己感到沮丧。)

例如,如果您之前的 .cs 中有此内容:

namespace Foo {
    class Bar { ...

这在你的.xaml中:

<UserControl x:Class="Foo.Bar" ...

然后你改变了你的命名空间:

namespace Baz {
    class Bar { ...

然后您需要将 .xaml 文件更改为:

<UserControl x:Class="Baz.Bar" ...

关于wpf - 更改 UserControl 文件中的命名空间后,...g.cs 文件出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/955646/

相关文章:

wpf - TabItem 内的 TabControl

c# - 当选择列表框项目时,在另一个列表框中显示相关数据

C# TreeView 并绑定(bind)到数据库

wpf - 如何重写 WPF 路由命令调度机制

html - 在 WPF 中显示 HTML 内容

wpf - 如何设置 UIElement 的 DesiredSize.Width?

.net - Visual Studio 2008 中缺少工作流项目模板

wpf - 启动 Citrix 应用程序时仅出现灰屏

c# - WPF DataGrid DataContext 极慢

c# - 如何在用户控件中使用继承的属性?