在Windows Phone 7.1项目中给出格式化文本块:
<StackPanel Orientation="Horizontal">
<TextBlock Foreground="DarkGray" VerticalAlignment="Bottom" Margin="0,0,0,8">
<Run Text="total length "/>
<Run Text="{Binding TotalHours}" FontSize="48"/>
<Run Text="h "/>
<Run Text=":" FontSize="48"/>
<Run Text="{Binding TotalMinutes}" FontSize="48"/>
<Run Text="m "/>
</TextBlock>
</StackPanel>
在VS设计器中正确预览:
在混合中,它已经不是我想要的方式了:
它在模拟器和真实设备中看起来就像Blend(好工作Blend团队)一样。
在8和45之前和之后添加这些空格的是什么?
如何强制我的布局正确显示(如在VS设计器中)?
答案 0 :(得分:56)
如果你在同一行写下你的所有Runs
,那么空白空间就会消失。基本上,这里的新行是UI上的一个空白区域。
<TextBlock Foreground="DarkGray" VerticalAlignment="Bottom" Margin="0,0,0,8"><Run Text="total length "/><Run Text="{Binding TotalHours}" FontSize="48"/><Run Text="h "/><Run Text=":" FontSize="48"/><Run Text="{Binding TotalMinutes}" FontSize="48"/><Run Text="m "/></TextBlock>
答案 1 :(得分:9)
要建立Justin XL的答案,重要的是你不能在运行标签之间有空格,但标签中的空白本身并不重要......
因此,您可以将广告投放分散在不同的行上,但不能在结果中添加空格:
<!-- Formatted to prevent adding spaces between runs -->
<TextBlock Foreground="DarkGray" VerticalAlignment="Bottom" Margin="0,0,0,8"
><Run Text="total length "
/><Run Text="{Binding TotalHours}" FontSize="48"
/><Run Text="h "
/><Run Text=":" FontSize="48"
/><Run Text="{Binding TotalMinutes}" FontSize="48"
/><Run Text="m "
/></TextBlock>