2011-04-26 23 views
0

我正在創建大量WPF應用程序,這些應用程序都與一箇中央WPF應用程序相關,並且需要共享相同的樣式和資源。首先,我在我的主項目中創建了一個文件夾,並添加了一些XAML樣式,這些樣式都可以在我想要的樣式中顯示UI。 後來,我創建了另一個應用程序,但希望共享相同的樣式,所以我將樣式移動到第三個項目中,將該項目添加到主應用程序並將樣式項添加到引用中。 問題是,將無法識別我的樣式項目。我在項目名稱的前面加上了前綴,並且根本不起作用。從不同項目合併XAML資源和樣式時遇到問題

我現在已經到了可以在ResourceDictionary的路徑部分中輸入xaml文件的完整相對路徑的地步,並且工作正常。但是,如果我將該項目移動到另一個文件夾,則會失敗。我想你可能會問爲什麼我會這樣做,並且有一些原因,比如簡單地重構我的項目結構。因此,通過引用而不是文件來處理資源會更容易。

我知道答案是英寸,但我找不到任何與另一個項目的樣式相關的任何東西。

我從這個網站有很大的反饋,迄今爲止,任何幫助將不勝感激。

回答

1

好的,我已經猜到了!基本上,您可以將樣式添加到單獨項目中的一組資源字典中,然後將該項目添加到解決方案並在您的主項目中對其進行引用。我得到了那麼多,但需要從我的主項目中的資源引用xaml資源文件。

我嘗試使用完整路徑名稱,但在工作時,它不是一個很好的解決方案,因爲如果我移動我的項目並重新鏈接它,該文件將因爲無效。

我使用的語法的作品如下:

<ResourceDictionary Source="/StyleResource;component/MSResources/TabControl.xaml" /> 

哪裏StyleResources是我的項目是對我的共享樣式的名稱,MSResources是保存XAML文件和樣式項目的文件夾文件名最後是顯而易見的。 我還沒有讀到關於「組件」的參考,但它的作品,所以我會在以後看看它,並更新這篇文章。