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

questionAnswers(4)

yourAnswerToTheQuestion