我试图使用应用于
在我的示例代码中,我还设置了
这可能是可能的吗?也许可以使用自定义
ColumnDefinition
的 Style
,通过一个绑定到名为 CheckMe
的 CheckBox
的 IsChecked
属性的 DataTrigger
,将 ColumnDefinition
的 Width
从 "Auto"
更改为 "*"
。
示例代码:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto">
<ColumnDefinition.Style>
<Style TargetType="ColumnDefinition">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=CheckMe,Path=IsChecked}" Value="True">
<Setter Property="Width" Value="*" />
<Setter Property="MinWidth" Value="300" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=CheckMe,Path=IsChecked}" Value="False">
<Setter Property="Width" Value="Auto" />
<Setter Property="MinWidth" Value="50" />
</DataTrigger>
</Style.Triggers>
</Style>
</ColumnDefinition.Style>
</ColumnDefinition>
</Grid.ColumnDefinitions>
<Border Background="Green">
<CheckBox x:Name="CheckMe" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<TextBlock Text="Use * width" />
</CheckBox>
</Border>
<StackPanel Grid.Column="1">
<TextBlock Text="Second column" />
</StackPanel>
</Grid>
在我的示例代码中,我还设置了
MinWidth
属性,它有效。这可能是可能的吗?也许可以使用自定义
AttachedProperty
代替?