2012-08-22 80 views
5

我有一個包含基類(xaml +代碼隱藏)的主項目(ProjectA)。
此外,我有另一個項目(ProjectB)參考ProjectA。在最後的 項目中,我繼承了一些在ProjectA中創建的用戶控件。解決URI錯誤的最佳做法

當啓動主應用程序,我收到以下錯誤:

The component 'XXX' does not have a resource identified by the URI 
'/My.Assembly;component/.../simplegridview.xaml' 

是否有解決這一問題最好的辦法?

+0

+1本週面臨完全相同的問題。雖然我對WPF相當陌生,所以不敢將它作爲答案發布,但是對於它的價值:現在我們做了這個(在代碼背後,因爲案例要求我們這樣做),用「My .Assembly「與基本方法中的this.GetType()。Assembly.FullName'(它從* inheriting *類型中獲取程序集)。 – Jeroen

+0

在simplegridview.g.cs文件中,有一個URI規範的定義,但如果我嘗試更改一個值,編譯器會覆蓋我的更改。但是,如何管理WPF上的繼承非常困難? – Alberto

+0

只是好奇,爲什麼不創建一個Common.dll包含通用控件並在ProjectA和ProjectB中引用它? –

回答

2

我知道這不是真的解決問題的方法。但我發現Clean和Build會使錯誤消失...

+0

這很有用,如果你已經把你的應用程序之前構建一次,並且此區域中沒有任何代碼發生變化。我會給這個鏡頭。有多少事情通過「乾淨然後重建」得到修復,這真是太神奇了:) – matrixugly

0

我有時遇到與2013相同的問題,沒有任何直接原因,例如,在重新啓動並從頭開始重建。在這種情況下解決方案構建成功,它也可以運行,但仍顯示錯誤列表。 5個URI錯誤。雖然有時需要清理和構建,但其他時候則必須關閉VS,刪除項目的bin/obj文件夾並重新打開VS,然後錯誤消失。