TextBlock con espaciado múltiple
Dado un bloque de texto formateado en el proyecto de 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>
Se está previsualizando correctamente en VS designer:
Ya no se ve de la manera que quiero en Blend:
Se ve igual que en Blend (good job Blend team) en emulador y un dispositivo real.
¿Qué agrega esos espacios antes y después de big 8 y 45?
¿Cómo puedo forzar que mi diseño se vea correctamente (como en VS designer)?
2 answers
Si escribes todos tus Runs
en la misma línea, el espacio vacío desaparecerá. Básicamente, una nueva línea aquí es un espacio vacío en la interfaz de usuario.
<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>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-03 20:01:09
Para construir a partir de la respuesta de Justin XL, la parte importante es que no puede tener espacios en blanco entre las etiquetas de ejecución, pero los espacios en blanco en las etiquetas en sí no importa...
Así que puede ser creativo para colocar corridas en líneas separadas, pero no agregar espacios al resultado:
<!-- 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>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-02 23:59:36