【发布时间】:2012-03-06 01:14:35
【问题描述】:
我在对齐列表框中的文本时遇到问题。我基本上是在尝试创建类似于 iOS 中的 uitableview 的列表框。
在下面的代码中,左边的 TextBlock 是按照我想要的方式设置的,但我无法让正确的 TextBlock 表现得像我想要的那样。现在文本是右对齐的,因此当文本太长而无法在屏幕上显示时,它会在开头截断文本,只显示文本的结尾。我想要发生的是让 TextBlock 右对齐,以便从右侧延伸,但如果左对齐,则在其中的文本显示文本的开头并切断文本的结尾。
<phone:PhoneApplicationPage.Resources>
<Style x:Key="ListBoxItemStretchContentStyle" TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</phone:PhoneApplicationPage.Resources>
<ListBox Height="327" Margin="8,274,0,0" Name="myListBox" Width="442" ItemContainerStyle="{StaticResource ListBoxItemStretchContentStyle}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Title Text" HorizontalAlignment="Left" Name="cellTitle" />
<TextBlock Grid.Column="1" Text="This is some text that is too long to fit on the screen" HorizontalAlignment="Right" TextAlignment="Left" Padding="20,0,0,0" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
【问题讨论】:
标签: windows-phone-7 listbox textblock