1

编辑:它似乎只是一个错误。如果有人想详细介绍,请随时获取更多详细信息。

我有一个奇怪的问题。最初一切正常。我记得我将命名空间声明为:

x:Class="SePSI.MainWindow"        
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:SePSI;assembly=SePSI"

但是现在,我收到错误消息:

Undefined CLR namespace. The 'clr-namespace' URI refers to a namespace 'SePSI' that is not included in the assembly.

事实上,我打开了旧项目,它们都有相同的错误。[编辑:嗯,其他项目现在运行良好。]

我正在使用vs2010。我应该重新安装VS吗?

可能有什么问题?

编辑:更多信息,我更改了命名空间的名称,据我所知,我到处都更改了。我做了一个新项目,其中 xmlns 命名空间工作正常,但后来我更改了命名空间的名称,并且它们的错误相同。

我制作了这个项目的完全相同的副本,它在那里工作得很好。我现在只是好奇旧文件出了什么问题。

4

1 回答 1

0

当您在 xaml 中删除命名空间时,它使用两种策略来解析名称。

从刚刚连接命名空间的同一个项目中解析对象。喜欢。

xmlns:local="clr-namespace;myproject"

在 xaml 中使用命名空间的其他方式正在引用其他程序集,这些程序集必须包含在项目中。

 xmlns:xceed="clr-namespace:Xceed.Wpf.Toolkit;assembly=WPFToolkit.Extended""

在这里扭曲您的命名空间和程序集名称可能会有所不同,因为您的程序集名称可能为 SePSI,但项目内的命名空间已更改。

最后一个是使用自定义名称空间,例如

xmlns:tk="http://schemas.xceed.com/wpf/xaml/toolkit"

所以你已经使用了程序集命名空间。确保您已包含该组件。

于 2013-06-20T14:49:21.010 回答