【发布时间】:2016-06-12 20:31:43
【问题描述】:
我有 2 台 Windows 7 机器,它们具有相同的自定义 .net 4.5.1 WPF 应用程序二进制文件和相同版本的 .net 框架 (4.5.1),连接到相同尺寸和分辨率的相同显示器。我有一个具有相同数据的 TextBlock,但文本对于该框来说太长了。两台机器的窗口中的文本都设置为 100% 放大。
由于某些奇怪的原因,文本在每个系统上的不同位置被修剪(WordElipsis),因此它看起来不同,并且在两台机器上其他一切都相同的情况下以不确定的方式表现。
WPF 使用哪些因素来决定修剪文本的位置?
<TextBlock
Margin="5,5,0,0"
Grid.Row="0"
Grid.Column="1"
Grid.ColumnSpan="2"
x:Name="StackPanel"
FontSize="10"
FontFamily="Gill Sans MT"
TextTrimming="WordEllipsis"
TextWrapping="Wrap"
ToolTip="{Binding MyThing.Title}">
<local:BindableInline x:Name="titleTextBlock" Text="{Binding MyThing.Title}"/>
</TextBlock>
【问题讨论】:
-
捕捉到设备像素; dpi,也许...
-
为了清楚起见,您指的是 TextBlock 控件吗? TextBox 没有明确的文本修剪选项。
-
是的 TextBlock - 考虑更正,我已更新问题并提供示例代码。
标签: c# .net wpf .net-4.5 texttrimming