Dado un bloque de texto con formato en Windows Phone 7.1 del proyecto:TextBlock con múltiples <Run> separación
<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>
Se obtiene una vista previa correctamente en VS diseñador:
Está ya no la miraba camino que quiero en la mezcla:
Se ve igual que en Blend (buen equipo de mezcla de trabajo) en el emulador y en un dispositivo real.
¿Qué agrega esos espacios antes y después de los grandes 8 y 45?
¿Cómo puedo forzar que mi diseño se vea correctamente (como en el diseñador de VS)?
gran respuesta. Como en serio, obtuvimos esas Runs que son elementos secundarios de TextBlock, ¿por qué importa cómo se muestra TextBlock si colocamos o no espacios en blanco entre ellos? ¿Y por qué las líneas nuevas + muchos espacios se interpretan como espacio único? –
@ValentinKuzub Porque puede ingresar texto sin formato entre las ejecuciones y se representará. El colapso de espacios en blanco consecutivos (pestañas, entradas) en un solo espacio es un comportamiento común de XML que la mayoría de nosotros ya conocemos en HTML. –
sí, como si ese fuera un gran ejemplo de HTML de grandeza sobre XML? Permitir mezclar texto entre Ejecuciones, Ejecuciones y tratar espacios en blanco con manejo de casos especiales no es algo bueno y una elección extraña. Su problema de intercambio y la causa. El problema es el tratamiento extraño de los elementos XML hijos de TextBlock. Incluye un extraño tratamiento de espacio en blanco y texto extraño entre el tratamiento de elementos. –