【问题标题】:Name "X" does not exists in the namespace "clr-namespace:Y;assembly=Z"名称“X”在命名空间“clr-namespace:Y;assembly=Z”中不存在
【发布时间】:2016-04-02 16:48:26
【问题描述】:

我最近正在为 WPF 设计一个自定义窗口,这是我的第一个。但是我遇到了 TargetType 和 clr-namespace 的问题。

代码是:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                xmlns:sf="clr-namespace:Suite.Forms;assembly=bhsuite">
<Style TargetType="{x:Type Button}" x:Key="WButtonStyle">

</Style>
<Style TargetType="{x:Type Button}" x:Key="ButtonStyle">

</Style>
<Style TargetType="{x:Type sf:BHWindow}" x:Key="BHWindowStyle">

</Style>

问题显然出在BHWindowStyle,我尝试使用 sf:BHWindow

我试过了:

  • 添加;assembly=MyAssembly
  • 包括在项目引用中:
    • PresentationCore
    • PresentationFramework
    • WindowsBase
    • System.Xaml
  • 以管理员身份重启
  • 清理和重建
  • 将构建平台从 x86 更改为 x64 以进行清理和重建。

【问题讨论】:

  • 这是唯一的错误吗?如果不是这样,其他一切都会编译?
  • 错误是什么?
  • 是的 dkozl。 Glen:我看到一个警告和一个错误。 错误是“名称“X”在命名空间“clr-namespace=Y;assembly=Z”中不存在。',警告是'找不到公共按类型引用命名为“X”的类型。第 4 行,位置 71'。请注意,对于 X,我的意思是,在两种情况下(警告和错误)都是自定义窗口。

标签: c# .net wpf c#-4.0


【解决方案1】:

通过删除xmlns:sf="clr-namespace:Suite.Forms;assembly=bhsuite",编译,重写,然后重新编译项目解决。

【讨论】:

    猜你喜欢
    • 2017-01-29
    • 1970-01-01
    • 2013-02-09
    • 1970-01-01
    • 2012-12-06
    • 2016-11-29
    • 2014-10-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多