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(よくできたBlendチーム)のように見えます。
ビッグ8と45の前後にこれらのスペースを追加するものは何ですか?
(VSデザイナーのように)レイアウトを強制的に正しく表示するにはどうすればよいですか?
すべてのRuns
を同じ行に書き込むと、空のスペースがなくなります。基本的に、ここの新しい行は、UIの1つの空のスペースです。
<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>
ジャスティン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>