wpf - WPF:根据窗口大小自动调整 ListView 宽度
问题描述
所以我ListView
里面有这个TabControl
:
<TabControl>
<TabItem Width="70" Height="70" Margin="0,0,0,0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="10"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="1">
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Grid.Row="1">
<ListView>
...
</ListView>
</Grid>
<Grid>
</Grid>
</Grid>
</TabItem>
</TabControl>
我的窗口 ResizeMode 是CanResizeWithGrip
,当我调整我的应用程序大小时,我希望我ListView
根据我的Window
宽度自动调整大小。
ListView
HorizontalAlignment
Stretch
当我的应用程序宽度更改为 not 时,我尝试定义我的bu ListView
。
解决方案
我相信由于您ListView
嵌套在其他控件中,因此这些控件需要将其HorizontalAlignment
设置为Stretch
. 我现在正在打电话,所以当我回到家时我会在我的系统上试用你的 XAML,如果我发现其他东西是罪魁祸首,我会更新我的答案。
编辑:我已将您的代码复制到 VS 中,并为我正确拉伸。我没有任何内容要检查,但如果我设置
<TabControl>
<TabItem Width="70" Height="70" Margin="0,0,0,0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="10"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="1">
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Grid.Row="1">
<ListView Background="Black">
</ListView>
</Grid>
</Grid>
</Grid>
</Grid>
</TabItem>
</TabControl>
我可以看到,当我调整窗口大小时,控件实际上正在拉伸。现在我不确定你遇到的问题是什么。你有机会发布更多细节吗?
推荐阅读
- c# - C# 为什么 Exception.StackTrace 不包含完整的堆栈跟踪?
- android - android-无法启动守护进程
- python - 提取字符串中特定列下的值
- solidity - 如何在 REMIX(Solidity IDE)中从 web3 调用带有参数的构造函数
- java - Firebase Recycler View Adapter(从 firebase 检索)
- javascript - 如何运行用 typescript 为节点编写的 jasmine 测试
- django - Django/RestFramework:如何从具有外键的模型中获取数据
- laravel - Laravel 读取文件内容并保持格式
- vba - 检测到错误 500 时刷新 Internet Explorer
- google-sheets - 谷歌表 - sumif 值与文本