2011-10-22 88 views
2

我剛剛安裝了Blend 4,並試圖將它用於一個相當大的VS2010項目,該項目包括幾個C++/CLI程序集一些本地代碼。對於很多控件,當試圖打開設計視圖時,我得到一個Blend錯誤,如'名稱XXX在命名空間'clr-namespace:YYY'中不存在。錯誤:命名空間'clr-namespace:YYY'中不存在名稱XXX'

我搜索了網頁(包括此論壇)的類似錯誤,並確保我已經遵循了所有可用的建議,例如,確保我有一個AnyCPU配置,我不使用例如'x64 \ Debug'作爲輸出文件夾,並且在我的XAML中使用了適當的命名空間聲明(在我的clr命名空間聲明中使用'assembly')。

我也做了一個簡單的新項目,只訪問與問題的程序集之一,但我仍然得到錯誤。

在我看來,這個問題與引用任何包含一些非託管代碼的C++/CLI程序集的程序集有關。我似乎沒有得到引用僅管理代碼程序集的程序集的錯誤。

什麼可能導致錯誤?

問候,

雷夫


這裏

小反應,所以也許我應該重寫我的問題有點:

先後爲使用組件與非託管項目沒有人成功地使用Expression Blend中代碼?

問候, 雷夫

回答

1

有類似的問題:項目2010年VB正確編譯沒有錯誤,但有錯誤在Expression Blend中打開時,它4(beautyful工具,順便說一句):

The name XXX does not exist in the namespace "clr-namespace:YYY".

在行:

<CollectionViewSource x:Key="YYYViewSource" d:DesignSource="{d:DesignInstance {x:Type my:YYY}, CreateList=True}" /> 

對我來說,這是一個實體在我的EDMX,一個名爲「YYY」用的ComplexType「YYY_Result」 FunctionImport,和我在CollectionViewSource引用實體「YYY」的XAML代碼。

生成的這個XAML代碼在VB 2010中沒有錯誤,編譯和運行非常好(在Blend中也可以正確編譯),但是在Blend中沒有設計視圖。

解決方案:我意識到我在X犯的錯誤:CollectionViewSource類型,並從「YYY」到「YYY_Result」更正名稱和它的工作:

<CollectionViewSource x:Key="YYYViewSource" d:DesignSource="{d:DesignInstance {x:Type my:YYY_Result}, CreateList=True}" /> 

結論: 也許這個答案是不完全相關你的問題涉及C++/CLI程序集與一些非託管的本地代碼,也許是的。

這種情況只是在VB 2010中正確編譯項目的一個很好的例子,但是在創建設計視圖(許多用戶在本論壇中報告類似問題)時,在Blend 4中生成的上述錯誤消息中出現了同樣的XAML。

相關問題