我在主页面上创建了一个简单的ListBox
,但是默认情况下添加的项目的垂直间距太大(好像项目高度是它应该的两倍)。我尝试更改DataTemplate
以及将{margin / padding}应用于ItemContainerStyle
但没有任何成功。
哪个属性影响ListBoxItem
关于如何根据内容调整大小的高度?更改字体系列也没有效果。
答案 0 :(得分:1)
我认为你要找的是项目行结束和下一行开始之间的空格。
对于向导生成的代码:
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
表示行高为78,行间距为17像素。
检查正在发生的事情的最简单方法是在元素后面加上一些彩色边框。我在下面做了。 Changng的高度或边缘然后显然是什么空间属于什么元素:
<!--ContentPanel contains ListBox and ListBox ItemTemplate. Place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,,0">
<ListBox x:Name="MainListBox" Margin="0,0,-12,0" ItemsSource="{Binding Items}" SelectionChanged="MainListBox_SelectionChanged" Background="Red">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
<Border Background="Yellow">
<TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" />
</Border>
<Border Background="Blue">
<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</Border>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>