假设我有一些这样的 XAML:
<StackPanel>
<TextBlock Text="Blah Blah Blah" />
</StackPanel>
在这种情况下,正如我所料,宽度是 NaN,因为它随着 StackPanel 的大小而增长,并且没有明确设置。
不幸的是,ActualWidth 并没有给我我期望的结果。ActualWidth 不受 StackPanel 大小的限制。它与渲染文本的长度绑定,即使该文本超出了父 StackPanel 的大小。
例如,如果 StackPanel.ActualWidth 是 400,而我的文本大于 400,我的 TextBlock.ActualWidth 可能是 556(或其他)。相同情况下的按钮不会以这种方式运行。
这对我来说是个问题,因为我正在尝试实现实现 TrimmingText 的附加行为(如果文本被裁剪,则在末尾省略)。如果显式设置了 Width 属性,它会很好用,但在更动态的情况下,我无法让它工作。
有什么想法吗?
布赖恩