Ind*_*ore 15 xaml microsoft-metro windows-8 .net-4.5
这是我TextBlock的
<StackPanel Orientation="Horizontal" Margin="0,3,0,0">
<TextBlock Text="6 or more characters, at least one letter and a number, " FontFamily="Segoe UI" Foreground="#000000" FontSize="13"/>
<TextBlock Text="no symbols" FontFamily="Segoe UI" Foreground="#000000" FontSize="13"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
这是输出(屏幕截图)

为什么TextBlock修剪结尾空格?但是当我提供前导空格时,它工作正常.
Jim*_*eil 19
看起来xml:space="preserve" 应该做的伎俩(请参阅在XAML中保留空白),但这似乎不适用于Windows应用商店应用程序(它在WPF中).
如果你使用不间断的空格字符, 它确实有效
<TextBlock Text="6 or more characters, at least one letter and a number,       " ....
Run Code Online (Sandbox Code Playgroud)
我想你可以尝试在Text属性上构建一个转换器来检查尾随空格并用非破坏空格替换 - 假设发生的截断不会发生得太早.
解决了<Run />一个<TextBlock />..
<StackPanel Orientation="Horizontal" Margin="0,3,0,0">
<TextBlock FontFamily="Segoe UI" Foreground="#000000" FontSize="13">
<Run Text="6 or more characters, at least one letter and a number, " />
<Run Text="no symbols" />
</TextBlock>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
自动换行仍然有效
<StackPanel Orientation="Horizontal" Margin="0,3,0,0">
<TextBlock FontFamily="Segoe UI" Foreground="#000000" FontSize="13"
Width="200" TextWrapping="Wrap">
<Run Text="6 or more characters, at least one letter and a number, " />
<Run Text="no symbols" />
</TextBlock>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
如果包装不是问题,我会很容易地使用Jim的解决方案(#160;).
在您的脑海中,请考虑HTML如何处理和保留空间.这也是XAML处理和保留空间的方式.当然,您会认为在TextBlock中,它会更直接地处理,是吧?嗯,它就是这样.至少有一个解决方案.
| 归档时间: |
|
| 查看次数: |
8657 次 |
| 最近记录: |