我如何在列表框内拉伸网格列
本文关键字:网格 列表 | 更新日期: 2023-09-27 18:04:46
我创建了这个ListBox
,我将HorizontalContentAlignment
设置为Stretch
,因此它覆盖了应用程序的整个宽度。
在ListBox中,我创建了一个4列的网格:
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
</Grid.ColumnDefinitions>
我想要的布局是第一列占用尽可能多的空间,其他三列只占用它们需要的空间。
在列中,我有Textboxes
和Image
(一个,在第二列)。
这里的情况是所有的东西都是从左到右堆叠的:
| Long_Text Image Text Text |
代替
| Long_Text Image Text Text |
我该如何解决这个问题?
设置列表框的ItemContainerStyle
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListBox.ItemContainerStyle>
你试过使用GridView吗?
<ListView>
<ListView.View>
<GridView>
<GridViewColumn/>
</GridView>
</ListView.View>
</ListView>
MSDN:显示数据表格