2015-09-26 143 views
1

是否可以将一个GridLength定义为ResourceDictionary中的XAML资源,并使用另一个StaticResource设置长度值?XAML GridLength资源的值绑定到另一个资源

我试图做到的,是这样的:

<System:Double x:Key="MyValue">8</System:Double> 
<Thickness x:Key="MyThickness" 
      Bottom="{StaticResource MyValue}" 
      Left="{StaticResource MyValue}" 
      Right="{StaticResource MyValue}" 
      Top="{StaticResource MyValue}" /> 
<GridLength x:Key="MyGridLength">{StaticResource MyValue}</GridLength> 

有没有办法做到这一点? 非常感谢!

回答

0

我认为没有办法像你想要的那样做。如果你传递任何字符串 - 它将直接传递给GridLengthConverter并且不被解析(所以StaticResource等被忽略)。如果你将传入xml,它将被解释为内容,并且GridLength不支持直接内容。

所以最合理的选择就是重复“8”,并把MyGridLength放在MyValue附近。否则 - 移动到静态属性(但你将只有一个值为8的字段,所以没有重复),并通过{x:Static}引用