I want the items inside ListBox to fill all allotted space. But they don't. They use only the amount of space they need.
ListBox looks as follows:
<ListBox x:Name="StripesList" Grid.Row="1">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="Margin" Value="0,4,0,4"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
And the user control that is bound as ListBox Item:
<UserControl x:Class="Blip.UI.Controls.StatusStrip"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
HorizontalAlignment="Stretch">
<Grid HorizontalAlignment="Stretch">
<Grid.RowDefinitions>
<RowDefinition Height="*" MinHeight="76" />
<RowDefinition Height="20" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="64" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Grid.Row="0" Width="64" Height="64"/>
<TextBlock Grid.Column="1" Grid.Row="0" Text="Test"/>
<Grid Grid.ColumnSpan="2" Grid.Row="1">
<StackPanel Orientation="Horizontal" VerticalAlignment="Bottom">
<Image Source="/Resources/1.png" Width="18" Height="18"/>
<TextBlock Text="Test" VerticalAlignment="Center" />
</StackPanel>
</Grid>
</Grid>
</UserControl>
Am I making any mistake?
You need to set the HorizonatalContentAlignment
to Stretch
.
<ListBox x:Name="StripesList" Grid.Row="1">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Margin" Value="0,4,0,4"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
This is because otherwise the content just takes up the space it needs rather than using all the space that's available.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With