使用 DataTemplate 在 ListViewItem 中对齐
Alignment in ListViewItem using DataTemplate
我正在使用 ListView 显示人员的名字和姓氏。
我想将名字左对齐,姓氏右对齐
我写了下面的代码:
<Windows.Resources>
<DataTemplate Datatype="{x:Type local:Person}">
<StackPanel Orientation="Horizontel">
<TextBlock Text="{Binding Path=FirstName}" TextAlignment="Left">
<TextBlock Text="{Binding Path=LastName}" TextAlignment="Right">
</StackPanel>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" />
ListView.DataContext 连接到 ObservableCollection
结果是名字和姓氏都左对齐。
我也尝试使用 DockPanel(How to make DockPanel fill available space)
但它不起作用。
谢谢,
我在这个 post 中找到了解决方案:[https://www.whosebug.com/questions/10765652/how-to-right-align-content-in-a-datatemplate][]
<Windows.Resources>
<DataTemplate DataType="{x:Type local:Person}">
<Grid>
<Grid.ColumnDefinition>
<ColumDefinition Width="*" />
<ColumDefinition Width="Auto" />
</Grid.ColumnDefinition>
<TextBlock Text="{Binding Path=FirstName}" Grid.Column="0">
<TextBlock Text="{Binding Path=LastName}" Grid.Column="1">
</Grid>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" HorzintalContentAlignment="Strech" />
你可以使用 DockPanel
<Windows.Resources>
<DataTemplate DataType="{x:Type local:Person}">
<DockPanel>
<TextBlock Text="{Binding Path=FirstName}" HorizontalAlignemnt="Left">
<TextBlock Text="{Binding Path=LastName}" HorizontalAlignemnt="Right">
</DockPanel>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" HorzintalContentAlignment="Strech" />
我正在使用 ListView 显示人员的名字和姓氏。 我想将名字左对齐,姓氏右对齐
我写了下面的代码:
<Windows.Resources>
<DataTemplate Datatype="{x:Type local:Person}">
<StackPanel Orientation="Horizontel">
<TextBlock Text="{Binding Path=FirstName}" TextAlignment="Left">
<TextBlock Text="{Binding Path=LastName}" TextAlignment="Right">
</StackPanel>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" />
ListView.DataContext 连接到 ObservableCollection
结果是名字和姓氏都左对齐。 我也尝试使用 DockPanel(How to make DockPanel fill available space) 但它不起作用。
谢谢,
我在这个 post 中找到了解决方案:[https://www.whosebug.com/questions/10765652/how-to-right-align-content-in-a-datatemplate][]
<Windows.Resources>
<DataTemplate DataType="{x:Type local:Person}">
<Grid>
<Grid.ColumnDefinition>
<ColumDefinition Width="*" />
<ColumDefinition Width="Auto" />
</Grid.ColumnDefinition>
<TextBlock Text="{Binding Path=FirstName}" Grid.Column="0">
<TextBlock Text="{Binding Path=LastName}" Grid.Column="1">
</Grid>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" HorzintalContentAlignment="Strech" />
你可以使用 DockPanel
<Windows.Resources>
<DataTemplate DataType="{x:Type local:Person}">
<DockPanel>
<TextBlock Text="{Binding Path=FirstName}" HorizontalAlignemnt="Left">
<TextBlock Text="{Binding Path=LastName}" HorizontalAlignemnt="Right">
</DockPanel>
</DataTemplates>
</Windows.Resources>
<ListView Name="myList", ItemSource="{Binding}" HorzintalContentAlignment="Strech" />