2013-06-20 62 views
1

編輯:它看起來像它只是一個錯誤。如果有人想進入細節,請隨時獲取更多細節。WPF中的clr-namesapce錯誤(重命名命名空間)

我有一個奇怪的問題。最初的事情工作正常。我記得我聲明命名空間:

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命名空間工作正常,但後來我改變了命名空間的名稱,並且它們也是相同的錯誤。

我做了這個項目完全相同的副本,它在那裏工作得很好。我只是好奇,現在舊文件出了什麼問題。

+0

您確定自定義名稱空間是否已正確聲明?試試像'xmlns:local =「clr-namespace:SePSI; assembly = SePSI」'...... – khellang

+0

是的,那是一個愚蠢的錯字。主要問題依舊。 – Naresh

回答

0

當您在xaml中使用命名空間delcare時,它會使用兩種解決名稱的手段。

從與命名空間連線的同一個項目中解析對象。喜歡。使用命名空間爲XAML這是refring其他組件,這些組件必須納入項目的

xmlns:local="clr-namespace;myproject"

其他方式。

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

扭曲這裏您命名空間和組件的名稱可能會有所不同,因爲你可能有集名稱爲SePSI但該項目內部的命名空間的chagned。

,最後一個是使用自定義名稱spaceing像

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

所以您所使用的組件命名空間。確保你已經包含了這個組合。

+0

; ?? CLR-命名空間; myproject的?? – Naresh

+0

問題編輯btw – Naresh

+0

嘗試使用xmlns:local =「clr-namespace:SePSI」。正如我所看到的,你已經包括了你工作時使用的同一個程序集名稱。如果您添加程序集名稱,則渲染將查找另一個名爲SePSI的程序集。 – JSJ