我正在尝试这样做......
<Style
x:Key="TwoByTwoGridStyle"
TargetType="Grid">
<Setter
Property="Grid.RowDefinitions">
<Setter.Value>
<ControlTemplate>
<RowDefinition
Height="*" />
<RowDefinition
Height="Auto" />
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter
Property="Grid.ColumnDefinitions">
<Setter.Value>
<ControlTemplate>
<ColumnDefinition
Width="*" />
<ColumnDefinition
Width="Auto" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
ControlTemplate
不对。我收到错误消息:“属性VisualTree
不支持RowDefinition
类型的值”。有没有办法表示行/列定义的集合?或者,是否有其他方法可以为2x2网格创建样式/模板?
感谢。
答案 0 :(得分:0)
RowDefinitions属性不是ControlTemplate类型,因此为它分配ControlTemplate没有意义。您应该改为分配RowDefinitionCollection:
<Style
x:Key="TwoByTwoGridStyle"
TargetType="Grid">
<Setter
Property="Grid.RowDefinitions"
<Setter.Value>
<RowDefinitionCollection>
<RowDefinition
Height="*" />
<RowDefinition
Height="Auto" />
</RowDefinitionCollection>
</Setter.Value>
</Setter>
<Setter
Property="Grid.ColumnDefinitions"
<Setter.Value>
<ColumnDefinitionCollection>
<ColumnDefinition
Width="*" />
<ColumnDefinition
Width="Auto" />
</ColumnDefinitionCollection>
</Setter.Value>
</Setter>
</Style>
答案 1 :(得分:0)
我现在很确定答案是:“无法完成”。如果我错了,请纠正我。