大家好在SO,WPF ResourceDictionary和造型
我在WPF有一個問題。我有2(或更多在不久的將來)ResourceDictionaries,包含所有控制模板和另一個包含圖標和SolidColorBrushes其中之一。由於第一ResourceDictionary中包含2個款式供每個控制,我想使包含顏色和圖標在對話框中使用它們的另一個解釋,從而使去除多餘的樣式。我想總是使用基本字典和所需的顏色字典,但這裏是問題:
模板無法訪問其他字典中的顏色。我曾嘗試以下方法:
方法1:引用窗口顏色字典和建設的參考顏色字典中的模板詞典:在窗口
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="BaseUIStyle.xaml"/>
<ResourceDictionary Source="UIStyles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
方法2引用兩個字典。最初的設置是一樣的,但反過來想(窗口 - >基礎 - >顏色)
//Window XAML
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="UIStyles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
//Color XAML
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="BaseUIStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
許多人,而造型窗戶遇到臭名昭著的.NET 4的Bug不在這裏IMO,因爲應用程序將.NET 4.5作爲目標框架,甚至第二種方法也不會太深入(如果我通過3級或更深級的搜索瞭解了這一點,就會發生錯誤)。
感謝所有幫助
我找不到App.xaml,可能是因爲項目的構建方式。 UIStyles.xaml包含顏色。 – AlphaNERD
這是一個WPF應用程序? App.xaml是應用程序的默認輸入,通常調用MainWindow。你很少有一個App.xaml;也許該文件被重命名?嘗試搜索「StartupUri」並查看是否可以這樣找到它。 –
實際上沒有結果... – AlphaNERD