在xaml中声明数组的数组
问题描述:
我想为数据网格使用内联数据源,显然XAML支持使用x:Array的内建类型的数组,但是当我试图声明嵌套数组时,尝试了一些方法,但他们都没有工作。在xaml中声明数组的数组
<x:Array Type="{x:Type Array}">
<x:Array Type="{x:Type x:String}">
<x:String>aaa1</x:String>
<x:String>aaa2</x:String>
</x:Array>
<x:Array Type="{x:Type x:String}">
<x:String>aaa9</x:String>
<x:String>aaa10</x:String>
</x:Array>
</x:Array>
这不会工作之一:
<x:Array Type="{x:Type {x:Array Type={x:Type String}}">
答
试试这个:
<x:Array xmlns:s="clr-namespace:System;assembly=mscorlib" x:Key="array" Type="{x:Type s:Array}">
<x:Array Type="{x:Type s:String}">
<s:String>aaa1</s:String>
<s:String>aaa2</s:String>
</x:Array>
<x:Array Type="{x:Type s:String}">
<s:String>aaa9</s:String>
<s:String>aaa10</s:String>
</x:Array>
</x:Array>
使用范例:
<ItemsControl ItemsSource="{StaticResource array}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl ItemsSource="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
“类型参数值并不需要使用X :类型标记扩展名;“ 你有没有试过编写'Type =“{x:Array}”'? – rebecca
@Rebecca是的,我试了一下,它编译好了,但没有在列表视图中显示 – fluter