WPF 绑定方式举例
一、如果ItemsControl 控件的ItemsSource要绑定到List类型,可以如下:
List<string> Names = new List<string>();
Names.Add("aaa");
Names.Add("bbb");
<ItemsControl ItemsSource="{Binding Student}" VerticalAlignment="Center"><ItemsControl.ItemsPanel><ItemsPanelTemplate><StackPanel Orientation="Horizontal"/></ItemsPanelTemplate></ItemsControl.ItemsPanel><ItemsControl.ItemTemplate><DataTemplate><TextBox Text="{Binding .}" Width="60" Height="22" Margin="0 0 10 0"/></DataTemplate></ItemsControl.ItemTemplate>
</ItemsControl>
二、ItemControl的子项怎么绑定与父项同一级的属性,如下:
<ItemsControl ItemsSource="{Binding YourCollection}"><ItemsControl.ItemTemplate><DataTemplate><!-- 绑定到与ItemsControl同一级别的属性 --><TextBlock Text="{Binding RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}, Path=DataContext.YourProperty}"/></DataTemplate></ItemsControl.ItemTemplate>
</ItemsControl>
三、ItemsControl中的子项的按键如何绑定与父项同一级的事件,如下:
<ItemsControl ItemsSource="{Binding YourCollection}"><ItemsControl.ItemsPanel><ItemsPanelTemplate><StackPanel Orientation="Horizontal"/></ItemsPanelTemplate></ItemsControl.ItemsPanel><ItemsControl.ItemTemplate><DataTemplate><Button Command="{Binding DataContext.TextChangedCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ItemsControl}}"/></DataTemplate></ItemsControl.ItemTemplate>
</ItemsControl>