【问题标题】:XAML ListView ItemContainer HeightXAML ListView ItemContainer 高度
【发布时间】:2016-02-05 04:02:38
【问题描述】:

我想更改 ItemContainerHeight 而不是 Container 位于 ListView 中的项目本身的 Height

我想改变什么:

对于这样的事情:

代码结构如下:

 <ListView>
                        <ListView.ItemTemplate>
                            <DataTemplate>
                                <Grid>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition/>
                                        <ColumnDefinition/>
                                    </Grid.ColumnDefinitions>
                                    <TextBlock Text="{Binding A}" Grid.Column="0"/>
                                    <TextBlock Text="{Binding B}" Grid.Column="1"/>
                                </Grid>
                            </DataTemplate>
                        </ListView.ItemTemplate>
                    </ListView>

希望得到帮助

【问题讨论】:

    标签: c# xaml listview win-universal-app uwp


    【解决方案1】:

    您需要更改出现在您的ListView 中的所有ListViewItem 元素中的MinHeight。您可以通过使用Style 来实现此目的。

    <ListView>
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="MinHeight" Value="0"/>
                <Setter Property="Padding" Value="6,3"/>
            </Style>
        </ListView.ItemContainerStyle>
    
        <TextBlock Text="Hello"/>
        <TextBlock Text="World"/>
    </ListView>
    

    在此方法中使用Padding 也是一个好主意,因为您不希望每个列表视图项太细

    【讨论】:

    • 感谢您的快速分析,但这不适用于我的项目,我什至设置了一个负值
    • 您还有其他针对ListViewItem 的样式吗?这个例子在你的项目中有效吗?也许创建一个新项目只是为了看看它是否有效?
    • 现在我知道为什么它不工作了......因为我有 DataTemplat 但现在绑定不工作了你能帮我再次在这里绑定是ItemsSource="{Binding Items}"Textblocks 看起来像 Text="{Binding Name}"Text="{Binding Adress}" 并且它们都在一个网格中希望你能再次帮助我;)
    猜你喜欢
    • 2017-11-27
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 2017-01-06
    • 1970-01-01
    • 2015-03-16
    • 2016-01-21
    • 1970-01-01
    相关资源
    最近更新 更多