【问题标题】:How can a ListBox fill its parent width?ListBox 如何填充其父宽度?
【发布时间】:2012-09-29 04:52:21
【问题描述】:

我有一个 ListBox 并需要它填充父级的宽度,但还没有找到方法,ListBox 始终具有 ListBox 宽度而不是 100%。

这是我的 XAML 代码:

<ListBox ItemsSource="{Binding anagSearchResults}" BorderThickness="0" Background="Gray"
     SelectedItem="{Binding selectCustomer}" 
     FontSize="14"    
     ScrollViewer.HorizontalScrollBarVisibility="Disabled">
     <ListBox.ItemContainerStyle>
           <Style TargetType="ListBoxItem">
               <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter>
           </Style>
     </ListBox.ItemContainerStyle>
     <ListBox.ItemTemplate>
         <DataTemplate>
               <Grid HorizontalAlignment="Stretch">
                   <Grid.ColumnDefinitions>
                       <ColumnDefinition Width="*"></ColumnDefinition>
                       <ColumnDefinition Width="*"></ColumnDefinition>
                       <ColumnDefinition Width="*"></ColumnDefinition>
                       <ColumnDefinition Width="*"></ColumnDefinition>
                    </Grid.ColumnDefinitions>
                    <TextBlock Grid.Column="0" Text="{Binding FirstName}"></TextBlock>
                    ....

我做错了什么?

【问题讨论】:

标签: wpf listbox


【解决方案1】:

我会检查父级的 Horizo​​ntalAlignment 并确保它们都没有设置为左、右或居中。

【讨论】:

  • 也可能是因为父母的宽度属性之一已设置为固定值。
【解决方案2】:

我会选择 ListView GridView。
然后对于宽度,您需要使用转换器。
将此示例中的转换器更改为父宽度 / 4

enter link description here

查看我的检查答案

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2011-07-16
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    相关资源
    最近更新 更多