我在Application.Resources中遇到ResourceDictionary的一些奇怪問題。 爲了在我的應用程序中填充多個ComboBox,我想將數據存儲在ResourceDictionary中。ResourceDictionary在應用程序資源中找不到
但是,我得到「找不到具有該名稱/密鑰的資源...」錯誤不斷。
我的XAML的代碼在這裏:
<Application.Resources>
<ResourceDictionary x:Key="RDArray">
<sys:String x:Key="item1">Item1</sys:String>
<sys:String x:Key="item2">Item2</sys:String>
<sys:String x:Key="item3">Item3</sys:String>
</ResourceDictionary>
</Application.Resources>
<ListBox x:Name="lb" ItemsSource="{Binding Values, Source={StaticResource RDArray}}" />
由於一些幸運的情況下,我能找到的是把其他資源一樣風格以上詞典解決問題。
<Application.Resources>
<Style x:Key="fubar" />
<ResourceDictionary x:Key="RDArray">
<sys:String x:Key="item1">Item1</sys:String>
<sys:String x:Key="item2">Item2</sys:String>
<sys:String x:Key="item3">Item3</sys:String>
</ResourceDictionary>
</Application.Resources>
「bug」出現在WPF應用程序和Silverlight中。
雖然我可以使用顯示的「技巧」來解決這個問題,但我很好奇這個錯誤來自何處。我無法找到任何關於此的信息。也許這只是我和我對WPF資源的理解錯誤。
您可能希望使用[x:Array](http://msdn.microsoft.com/en-us/library/ms752340.aspx)標記擴展。這使您可以在XAML中定義項目列表。 – CodeNaked 2011-03-21 12:42:10