2013-08-27 156 views
1

在我們的項目中,我們有一些wpf對話框,並決定將一些常用樣式移動到單獨的程序集中,以便我們可以重用它們。我們現在面臨的問題是如何在xaml中正確引用這些資源?應該注意的是,我們正在爲第三方應用程序開發一個插件,這裏要記住的關鍵是我們的插件程序集位於與應用程序本身不同的文件夾中。引用XAML中的資源

我們已經使用這種嘗試:

<ResourceDictionary> 
    <ResourceDictionary.MergedDictionaries> 
     <ResourceDictionary 
      Source="pack://application:,,,/Wpf.CustomStyles;component/Styles.xaml"/> 
    </ResourceDictionary.MergedDictionaries> 
</ResourceDictionary> 


但它不工作。我會嘗試猜測(我不是這方面的專家,所以如果我在這裏跟蹤道歉,)道歉,這是行不通的,因爲它在與.EXE相同的文件夾中查找Wpf.CommonStyles.dll應用程序的文件,但正如我所說的,我們的插件程序集安裝在不同的文件夾中。所以我的問題是,如果我希望框架在「調用」程序集所在的同一文件夾中查找Wpf.CommonStyles,而不是在應用程序.exe的位置查找它們,那麼Source屬性的適當行應該是什麼位於?

+0

只要'Styles.xaml'的'Build Action'被設置爲'Resource',它就應該像這樣工作。請參閱[這裏](http://msdn.microsoft.com/en-us/library/aa970494.aspx#Resource_Files)。 – Clemens

回答

0

只要將構建中的DLL複製到目標文件夾(在引用的屬性中設置copy localtrue),這應該不成問題。

關於這個問題的文獻here