我想根据其容器的宽度设置 TextBlock 的宽度,减去 TextBlock 上设置的边距。
这是我的代码:
<TextBlock x:Name="txtStatusMessages"
Width="{Binding ElementName=LayoutRoot,Path=ActualWidth }"
TextWrapping="WrapWithOverflow"
Foreground="White"
Margin="5,5,5,5">This is a message
</TextBlock>
除了由于左右边距 b 设置为 5 而导致 TextBlock 太大 10 个单位之外,效果非常好。
好吧,所以我想......让我们使用转换器。但我不知道如何传递容器控件的 ActualWidth (参见上文:LayoutRoot)。
我知道如何使用转换器,甚至是带有参数的转换器,只是不是像这样的参数... Binding ElementName=LayoutRoot,Path=ActualWidth
例如,我无法使这个工作:
Width="{Binding Converter={StaticResource PositionConverter},
ConverterParameter={Binding ElementName=LayoutRoot,Path=ActualWidth }}"
我希望我说得足够清楚,并希望你能提供帮助,因为今晚谷歌对我没有帮助。