我有一个多维 int 数组(向量),我想ItemsControl
用TextBox
as显示它DataTemplate
。我习惯使用Binding
一个VectorList
List< int[] >。int[,] 不起作用,因为ItemSource
必须是一维的,所以我将其转换为 List< int[] >。
这Binding
有效,所有显示正确VectorList
。但是不起作用, 的不会改变并且不会更新。我究竟做错了什么?OneWay
TextBoxes
TwoWay
ItemSource
ItemsControl
VectorList
XAML:
<ItemsControl x:Name="itemsControl" ItemTemplate="{DynamicResource DataTemplate_Level1}" ItemsSource="{Binding VectorList, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
<DataTemplate x:Key="DataTemplate_Level2">
<TextBox Text="{Binding Path=., Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Height="35" Width="40"/>
</DataTemplate>
<DataTemplate x:Key="DataTemplate_Level1">
<ItemsControl ItemsSource="{Binding Path=.}" ItemTemplate="{DynamicResource DataTemplate_Level2}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</DataTemplate>