2014-02-19 84 views
0

我在Asset類庫項目中有一個圖像。構建操作是「內容」,「複製到輸出目錄」設置爲「始終複製」,因爲我希望能夠允許用戶無需我的干預即可替換這些文件。WPF無法在ShadowCache中找到路徑的一部分

問題是,我得到一個設計時錯誤(一切工作發現在編譯和運行),說「找不到路徑的一部分」C:\ Users \ Name \ AppData \ Local \ Microsoft \ VisualStudio的\ 12.0 \設計\ ShadowCache \ oreaxsnr.cjd \ orsr3pqd.wnf \圖片\ TestImage.jpg」「。

我使用Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);來獲取程序集的路徑,然後將其與\\Images\\TestImage.jpg字符串連接起來。認爲這是問題的根源,我評論了與獲取該圖像,清理解決方案和重建相關的所有內容。找到部分路徑仍然存在問題。

我去了orsr3pqd.wnf文件夾,還有調用圖像的類庫.dll,沒有別的。在關閉Visual Studio後,我刪除了所有ShadowCache文件夾,重新啓動VS2013,並立即將兩個文件夾放在ShadowCache文件夾中。

也許它認爲應該有.dll中的資源,即使我將構建操作設置爲「內容」?任何方向都會有幫助。

+0

我添加了'Images \ TestImage.jpg'文件夾和文件到orsr3pqd.wnf文件夾,現在看起來很開心。不過,我認爲這不是長期的解決方案。 – jporcenaluk

回答

0

您應該能夠從XAML直接引用它,如果它是一個項目,是這樣的應用程序的一部分:

<Image Source="/AssemblyName;component/Images/TestImage.jpg" /> 

如果還是不行,那麼這應該:

<Image> 
    <Image.Source> 
     <BitmapImage UriSource="pack://application:,,, 
      /AssemblyName;component/Images/TestImage.jpg"/> 
    </Image.Source> 
</Image> 

如果沒有這些工作給你,那麼我也建議你的圖像文件生成操作設置爲資源,而不是內容

+0

我用各種方式來引用文件。我想,使用'pack:// application:,,,'應該和Resources一起使用。相對路徑可能是一個選項,如果它再次混淆,我會嘗試。 如果我必須將構建操作設置爲資源,我會,但我想讓我們的設計器交換文件,而無需將它們添加到項目中。 – jporcenaluk

相關問題