如何在UIElement.Margin上设置Binding的FallbackValue?

7

请考虑以下代码:

<UserControl x:Name=root>
....
    <TextBlock Text="Hello World" Margin="{Binding ElementName=root, Path=LeftButtonMargin}"/>
....
</UserControl>

现在,如何设置绑定的FallBackvalue语法是什么? 我已经尝试了一些不同的选项,但似乎找不到正确的语法:
Margin="{Binding ElementName=root, Path=LeftButtonMargin, FallBackValue={}10,10,0,0}"
Margin="{Binding ElementName=root, Path=LeftButtonMargin, FallBackValue={}{10,10,0,0}}"
Margin="{Binding ElementName=root, Path=LeftButtonMargin, FallBackValue={}"10,10,0,0"}"

这是完全不可能的吗?基本上,我需要在设计时获取这些值...
3个回答

9
更简单的做法:使用单引号。
Margin="{Binding ElementName=root, Path=LeftButtonMargin, FallBackValue='10,10,0,0'}"

多个不同边距的接受答案 - DelusionX

7

希望能够正常工作,

<UserControl.Resources>
 <Thickness x:Key="MyMargin" Bottom="5" Top="10">

 </Thickness>
<UserControl.Resources>


<TextBlock Text="Hello World" 
Margin="{Binding ...,FallBackValue={StaticResource MyMargin}}"/>

2
这个对我有用:

这对我有效:

    <TextBlock Text="Hello World">
        <TextBlock.Margin>
            <Binding ElementName="root" Path="LeftButtonMargin" FallbackValue="10, 10, 0, 0" />
        </TextBlock.Margin>
    </TextBlock>

but its rather big...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接