我在Windows Phone 8应用程序中有一个问题,我的ListBoxItem
无法跨越整个ListBox
的宽度。
我的ListBox
:
<ListBox
ItemsSource="{Binding Events}"
behaviors:ItemClickCommandBehavior.Command="{Binding EventSelectedCommand}"
ItemTemplate="{StaticResource EventListTemplateSelector}"/>
而它的DataTemplates则在一个单独的XAML资源文件中:
<DataTemplate x:Key="EventListHeaderTemplate">
<Border HorizontalAlignment="Stretch">
<Grid Height="50">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="6*"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding ImageUri}" VerticalAlignment="Center" HorizontalAlignment="Center" Height="30"/>
<TextBlock Grid.Column="1" Text="{Binding SomeText}" VerticalAlignment="Center" HorizontalAlignment="Left" Foreground="Black"/>
</Grid>
</Border>
</DataTemplate>
我无法让物品真正地拉伸,也不知道问题出在哪里。我尝试过将 ItemContainerStyle
的 HorizontalContentAlignment 设置为 "Stretch",但没有起作用。我尝试了许多其他组合,似乎只有将边框或网格宽度设置为常数才有效,另外一个有效的解决方案是将边框宽度绑定到包含 ListBox 的 ActualWidth 上,但如果可以使其工作,我想使用拉伸变体。