ListBox的保证金是不是在Windows 7和Windows相同的8(ListBox margi

2019-08-16 23:35发布

我有一个风格的列表框WPF。 我的Windows 8下开发设置后的样式如下(见图片),当我在Windows 7测试应用程序,保证金是不一样的。 正如你可以在imagen画质看到节点之间的分离是在Windows 8 1px的,但0 PX在Windows 7中。

你知道这是为什么,以及如何解决呢?

提前致谢。

Answer 1:

我实际上设法摆脱它自己,它看起来是一个的被Windows8的改变ListViewItem的风格,增添了风格到ListView的本地资源为我工作过。

    <ListView.Resources>
        <Style TargetType="ListViewItem">
            <Setter Property="Margin" Value="0"/>
            <Setter Property="Padding" Value="0"/>
            <Setter Property="BorderThickness" Value="0"/>
        </Style>
    </ListView.Resources>


Answer 2:

你可以尝试在一个DataContext明确设置ListBoxItem的保证金。 例如:

<ListBox>
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" Margin="0,0,0,1" />
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>

可能是因为Windows 7和Windows 8对列表框不同的风格。



Answer 3:

默认ListBoxItem中包含边框。 该ListBoxItem中也指定了由该边框继承了填充。 它需要填充DP进行设置像什么安迪提及。



文章来源: ListBox margin is not the same in Windows 7 and Windows 8