堆栈面板忽略水平对齐问题 XAML
本文关键字:对齐 问题 XAML 水平 堆栈 | 更新日期: 2023-09-27 18:33:17
我有问题,我只是尝试制作带有消息的聊天窗口(从右传入和从左发送),但似乎堆栈面板忽略了水平对齐。这是我的代码
<ListView>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<StackPanel HorizontalAlignment="Left">
<TextBlock TextWrapping="Wrap"
FontSize="22"
Text="{Binding MessageTextIn}"
/>
<TextBlock
FontSize="10"
Text="{Binding MessageTimeIn}" Padding="10"
/>
</StackPanel>
<StackPanel HorizontalAlignment="Right">
<TextBlock TextWrapping="Wrap"
FontSize="22"
Text="{Binding MessageTextOut}"
/>
<TextBlock
FontSize="10"
Text="{Binding MessageTimeOut}" Padding="10"
/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
似乎我做错了什么,但究竟是什么?
感谢您的任何帮助!
对不起,如果我问一些愚蠢的事情。
这是因为您的 ItemContainer 只有正确的对齐方式(默认情况下)。设置列表视图的 ItemContainerStyle:
<ListView>
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalAlignment" Value="Stretch" />
</Style>
</ListView.ItemContainerStyle>
</ListView>