在命名空间中存在类,但未找到XMLNS名称错误

时间:2015-01-21 08:44:36

标签: c# wpf xaml

enter image description here

我正在尝试从IntegerUpdown命名空间引用xceed.wpf.Toolkit。当我使用对象浏览器时,我可以看到IntegerUpdown,但在构建时我收到错误:

  

错误15名称" IntegerUpDown"命名空间中不存在" clr-namespace:Xceed.Wpf.Toolkit; assembly = WPFToolkit.Extended"。

2 个答案:

答案 0 :(得分:7)

WPFToolKit定义了别名或自定义命名空间http://schemas.xceed.com/wpf/xaml/toolkit。请参阅下文。

<Window x:Class="WPFComm_Learning.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:tool="http://schemas.xceed.com/wpf/xaml/toolkit"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <StackPanel>
            <tool:IntegerUpDown/>            
        </StackPanel>
    </Grid>
</Window>

答案 1 :(得分:0)

我也碰到了这个,它让我疯狂了一天的大部分时间。我的应用编译并运行正常,但设计师无法显示我的用户界面 - 这是一个真正的问题,因为我还在使用该用户界面。

我尝试的不起作用的事情:

  • 清理并重建应用程序。
  • 卸载并重新加载项目。
  • 重新启动Visual Studio。
  • 使用Nuget重新安装。
  • 在调试和发布配置之间切换。
  • 在x86和x64平台目标之间切换。
  • 使用显式命名空间/程序集引用指定命名空间别名,而不是上面LightSwitch的代码段中显示的URL引用。

最后,经过多次嘲笑之后,我发现this article揭示了一些亮点。简而言之,由于程序集来自外部源(在本例中为Codeplex project),因此Windows会在每个程序集文件上设置Blocked标志。要解决此问题,只需右键单击每个文件并查看其“属性”对话框;如果底部显示取消阻止按钮,请单击它以清除该块。 (当然,这假定您相信这些集合的来源 - 警告经纪人。)

可能需要一个额外步骤(在上述文章中未提及)。如果您的项目引用了在解除阻止文件之前创建的问题程序集,则可能需要删除这些引用并重新添加它们以刷新它们。

祝你好运!

相关问题