美文网首页
ItemsPanelTemplate

ItemsPanelTemplate

作者: Lulus | 来源:发表于2017-12-31 14:53 被阅读0次

    用以定义集合控件的容器外观,如ListBox,Combox 等等
    使用一个自定义的ListBox用以说明,其默认外观是上下排列,这里修改成横向排列

    <Window.Resources>
        <DataTemplate x:Key="PersonDataTemplate">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="*"></RowDefinition>
                    <RowDefinition Height="*"></RowDefinition>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"></ColumnDefinition>
                    <ColumnDefinition Width="*"></ColumnDefinition>
                </Grid.ColumnDefinitions>
                <TextBlock Grid.Row="0" Grid.Column="0" Text="{Binding Name}"></TextBlock>
                <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding Age}"></TextBlock>
                <TextBlock Grid.Row="1" Grid.Column="0" Text="{Binding Hometown}"></TextBlock>
            </Grid>
        </DataTemplate>
        <ItemsPanelTemplate x:Key="PersonItemsPanelTemplate">
            <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"></StackPanel>
        </ItemsPanelTemplate>
    </Window.Resources>
    <Grid>
        <ListBox ItemsSource="{Binding}" ItemTemplate="{StaticResource PersonDataTemplate}" ItemsPanel="{StaticResource PersonItemsPanelTemplate}"></ListBox>
    </Grid>
    

    定义一个ItemsPanelTemplate,设置方向为Horizontal
    在ListBox中指定ItemsPanel

    效果

    1
    常见的条目控件有:ListBox,Menu,StatusBar等(默认纵向排列)

    示例代码

    https://github.com/zLulus/NotePractice/tree/dev3/WPF/WpfDemo/Template/ItemsPanelTemplate

    相关文章

      网友评论

          本文标题:ItemsPanelTemplate

          本文链接:https://www.haomeiwen.com/subject/lufagxtx.html