Adicionar coleção ou matriz ao dicionário de recursos wpf
Pesquisei alto e baixo e não consigo encontrar uma resposta para isso. Eu tenho duas perguntas
Como você cria uma matriz ou coleção em XAML. Eu tenho uma matriz que eu quero ficar lá e vincular a uma caixa de combinação. Minha primeira idéia foi colocar um ItemsControl em um dicionário de recursos, mas o ItemsSource de uma caixa de combinação espera IEnumerable para que não funcionasse.Aqui está o que eu tentei no meu dicionário de recursos e nem funciona
<ItemsControl x:Key="stateList">
<sys:String>AL</sys:String>
<sys:String>CA</sys:String>
<sys:String>CN</sys:String>
</ItemsControl>
<ItemsControl x:Key="stateList2">
<ComboBoxItem>AL</ComboBoxItem>
<ComboBoxItem>CA</ComboBoxItem>
<ComboBoxItem>CN</ComboBoxItem>
</ItemsControl>
e aqui está como eu me vinculo a ele
<ComboBox SelectedValue="{Binding Path=State}" ItemsSource="{Binding Source={StaticResource stateList2}}" >
</ComboBox>
EDIT: ATUALIZADO
Eu tenho essa primeira parte para trabalhar dessa maneira
<col:ArrayList x:Key="stateList3">
<sys:String>AL</sys:String>
<sys:String>CA</sys:String>
<sys:String>CN</sys:String>
</col:ArrayList>
No entanto, eu prefiro não usar uma lista de matriz, gostaria de usar uma lista genérica, se alguém souber como, por favor, me avise.
EDIT UPDATE: Eu acho que o XAML tem suporte muito limitado para genéricos, então talvez uma lista de matrizes seja a melhor que posso fazer por enquanto, mas ainda assim gostaria de ajuda na segunda pergunta, se alguém tiver um anser
2nd. Tentei fazer referência a um dicionário de recursos mesclados no meu XAML e tive problemas porque, em Window.resources, eu tinha mais do que apenas o dicionário, portanto, foi necessário adicionar x: Key. Depois de adicionar a chave, o sistema não consegue mais encontrar os itens no meu dicionário de recursos. Eu tive que mover o dicionário mesclado para Grid.Resources. Idealmente, gostaria de referenciar o dicionário mesclado no app.xaml, mas tenho o mesmo problema
Aqui está um código de exemplo. Essa primeira parte exigia uma chave x: para compilar porque eu tenho um conversor e queixava-se de que cada item deve ter uma chave se houver mais de uma
<UserControl.Resources>
<win:BooleanToVisibilityConverter x:Key="VisibilityConverter" />
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ResourcesD.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
Eu tive que mudar isso para isso
<UI:BaseStep.Resources>
<win:BooleanToVisibilityConverter x:Key="VisibilityConverter" />
</UI:BaseStep.Resources>
<Grid>
<Grid.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ResourcesD.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Grid.Resources>
</Grid>
Obrigado