我有一个全景项目
<controls:PanoramaItem Header="Stream" Margin="0,-16,0,0">
<ListBox Margin="0,-16,0,0" ItemsSource="{Binding Items}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="6,0,0,10">
<StackPanel Margin="6,0,0,10" Orientation="Horizontal">
<Image Source="{Binding ProfileImage}"
VerticalAlignment="Top"
Margin="0,4,0,0"
Width="48" Height="48"
/>
<!-- This doesn't work -->
<TextBlock Text="{Binding ProfileName}"
TextWrapping="Wrap"
Style="{StaticResource PhoneTextTitle2Style}"/>
<TextBlock Text="{Binding RelativeTime}"
Margin="2,10,0,2"
Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
<!-- This works -->
<StackPanel Margin="0,-4,0,17" Orientation="Vertical">
<TextBlock Text="{Binding Content}"
TextWrapping="Wrap"
Style="{StaticResource PhoneTextNormalStyle}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PanoramaItem>
我需要进行ProfileName
文字换行,如果可能的话,我希望让RelativeTime
向右浮动。
我该怎么做?
答案 0 :(得分:5)
有道理,在水平StackPanel中没有明显的宽度约束来使Textblock换行。您可以添加这样的约束,但这需要提供像素。
只是看看XAML我想你可能想要一个有3列的Grid,而不是StackPanel。