2011-01-24 54 views
6

在Silverlight應用程序中,我們可以在App.xaml中定義資源,並且可以從任何XAML文檔訪問它們,而無需顯式合併這些資源。類庫中的全局資源

是否有類庫的等價解決方案? 我在類庫中創建了一個單獨的資源字典,但在使用它之前我必須按如下所示合併它。

<UserControl.Resources> 
<ResourceDictionary> 
    <ResourceDictionary.MergedDictionaries> 
    <ResourceDictionary Source="MyResources.xaml" /> 
    </ResourceDictionary.MergedDictionaries> 
</ResourceDictionary> 
</UserControl.Resources> 

有沒有辦法避免這種情況?在每個XAML文檔中爲全局使用的資源執行此操作非常繁瑣。

回答

1

我正要問這個問題。不幸的是,你所描述的非常接近我所能想到的。理論上,你似乎應該能夠將這些放到圖書館的主題\ generic.xaml文件中,但我一直無法做到這一點 - 可能我只是在做一些事情。我已經能夠做到最好的僅僅是一個你在做什麼,即離開了MergedDictionaries語法略短的變體:

<UserControl.Resources> 
    <commonui:CommonStringsPublic x:Key="commonStrings" /> 
    <ResourceDictionary Source="/Alanta.Client.UI.Common;component/CommonResources.xaml" x:Key="commonResources" /> 
</UserControl.Resources> 

我很想有人點我到一個更好的解決方案:-)。

+0

我想這是一樣好,謝謝! 在此期間,我還創建了一個用於創建用戶控件的視覺工作室模板,添加了這個以及其他常用代碼(即xmlns指令等)。 – 2011-01-25 16:23:21