我一直在尝试以像素为单位指定维度,因此我可以在UI中的多个位置使用它。 e.g。
...
<ResourceDictionary
xmlns:System="clr-namespace:System;assembly=mscorlib">
<System:Double x:Key="a-width">140px</System:Double>
</ResourceDictionary
...
<TextBlock
Width="{StaticResource a-width}"
Text="this TextBlock is a-width wide"/>
...
然而,这不起作用。尽管Width的类型为'double',但您不能使用'px'后缀指定double的值,因为LengthConverter支持此格式,它是FrameworkElement.Width属性的TypeConverter。
有没有办法以'Npx'格式指定宽度作为资源?
答案 0 :(得分:2)
px(DIPs)是默认值,因此您只需使用'px'后缀指定double值:
<ResourceDictionary
xmlns:System="clr-namespace:System;assembly=mscorlib">
<System:Double x:Key="a-width">140</System:Double>
</ResourceDictionary
...
<TextBlock
Width="{StaticResource a-width}"
Text="this TextBlock is a-width wide"/>