c# - 为什么 ListView 行会随机变得非常非常高?
问题描述
我在 aListView
的第一行有一个Grid
。通过双击GridControl
下面的项目,有一些数据会填充每一行。所以它的主要思想是点击一个GridControl
项目,这样它也可以被看到ListView
。
问题很奇怪:第一个项目总是被添加并且在 中看起来正常ListView
,但是接下来的项目会变得非常大,随机顺序。
我没有找到任何ListView.Rows
财产或类似的东西。所以我无法明确设置我想要的方式。
有一个 Grid,ListView 保存在其中:
<Grid.RowDefinitions>
<RowDefinition Height="200" x:Name="xSelectedRow"/>
<RowDefinition Height="4"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
ListView 有一些列:
<ListView x:Name="xListSelected" BorderBrush="Transparent" Grid.Row="0"
ItemsSource="{Binding SelectedItemsSource}"
SelectedItem="{Binding SelectedSelectedItem}">
<ListView.Resources>
<Style TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Padding" Value="10 2 4 2" />
<Setter Property="Visibility" Value="Collapsed" />
</Style>
</ListView.Resources>
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction
Command="{Binding RemoveSelectedItemCommand}"
CommandParameter="{Binding ElementName=LayoutRoot, Path=SelectedItem}" />
</i:EventTrigger>
</i:Interaction.Triggers>
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Width="{Binding Path=ActualWidth, ElementName=xProjectViewId}">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock TextWrapping="Wrap" Text="{Binding Id}"
FontSize="14"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="{Binding Path=ActualWidth, ElementName=xName}" >
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock TextWrapping="Wrap" Text="{Binding Name}"
FontSize="14"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
这是图片的链接:https ://imgbbb.com/image/jkdJp
图像中有一个示例,其中第一行、第二行和第三行看起来正常,但第四行非常大。而且似乎并不总是这样:接下来的两排可以正常,但接下来的三排又大了。
你见过这样的问题吗?
解决方案
关于为什么有些行更高的问题的答案是:
您将文本块设置为换行,其中的字符串然后使这些控件增长。
这不是随机的。
决定你喜欢哪个。
当前增加了一些行的高度。
通过设置 maxheight 截断字符串。
降低(大概)名称变量的大小,以便他们只能输入这么多。
一些混合。
以其他方式重新安排您的 UI。
推荐阅读
- mysql - 带有 WHERE 子句和 GROUP BY 子句的 MySQL 错误
- ios - 如何通过终止主机应用程序关闭我的数据包隧道扩展
- c# - 使用 Web Deploy 在 Azure 中部署普通的 ASP.NET Core 2.2 Web 应用程序会引发错误
- database - 计算机科学的单一所有权
- xml - 如何使用 SED 提取特定 XML 节点
- python - 获得最大的连贯区域
- javascript - 无法在 Highcharts 图表中设置时区
- acumatica - SQL 到 BQL 协助
- r - 使用 IMDB 的 rvest 抓取多个页面
- html - 用于在两个 div 类之间交替的 Twig 规则