gpt4 book ai didi

WPF:如何让 ListViewItems 适合窗口宽度并使用 TextEllipsis

转载 作者:行者123 更新时间:2023-12-04 00:26:17 25 4
gpt4 key购买 nike

我目前正在使用 ListView。它的 ListViewItems 由一个左对齐的 TextBlock 和一个右对齐的 Button 组成:

The ListView in an uncomplicated state.

现在,我想让我的 Items 始终显示 Button 并相应地缩短 TextBlock,因此它们不需要显示 ScrollBar:

The ListView's intended behavior.

不幸的是,现在这不起作用:

The ListView's current behavior.

我该怎么做才能让它发挥作用?
这是我的示例代码:

<Window x:Class="JansWpfTestUmgebung.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ListView x:Name="AllItemsList"
HorizontalContentAlignment="Stretch"
HorizontalAlignment="Stretch">
<ListViewItem>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0"
TextTrimming="CharacterEllipsis"
Text="Item 1 with a very long description"/>
<Button Grid.Column="1"
Content="Modify" />
</Grid>
</ListViewItem>
<ListViewItem>Item 2</ListViewItem>
<ListViewItem>Item 3</ListViewItem>
</ListView>
</Window>

感谢您的任何提示! :-)

最佳答案

您可以通过在按钮列上强制设置大小来做到这一点:

<Window
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"
x:Class="JansWpfTestUmgebung.MainWindow"
d:DesignWidth="394">
<ListView x:Name="AllItemsList"
HorizontalContentAlignment="Stretch"
HorizontalAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListViewItem>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="45" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0"
TextTrimming="CharacterEllipsis"
Text="Item 1 with a very long description"/>
<Button Grid.Column="1"
Content="Modify"/>
</Grid>
</ListViewItem>
<ListViewItem Content="Item 2"/>
<ListViewItem Content="Item 3"/>
</ListView>
</Window>

它的方式是,它尽最大努力保持 * 大小的列尽可能大,以牺牲自动大小的列为代价。但是固定大小将胜过 * 大小。

关于WPF:如何让 ListViewItems 适合窗口宽度并使用 TextEllipsis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6998237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com