0
所以我有兩列,我想根據布爾標誌設置列的寬度爲0或* *。我想我可以用Converter來做,但我希望能有一個更清晰的解決方案。有什麼想法嗎?我將如何顯示或隱藏基於布爾標誌的網格列?
所以我有兩列,我想根據布爾標誌設置列的寬度爲0或* *。我想我可以用Converter來做,但我希望能有一個更清晰的解決方案。有什麼想法嗎?我將如何顯示或隱藏基於布爾標誌的網格列?
所以我最終確定最好的解決方案是在實際的列定義上使用帶有DataTrigger的樣式。這意味着該列負責根據布爾屬性調整自己的大小。
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition>
<ColumnDefinition.Style>
<Style TargetType="ColumnDefinition">
<Style.Triggers>
<DataTrigger Binding="{Binding ShowAdvanced}" Value="False">
<Setter Property="Width" Value="0" />
</DataTrigger>
<DataTrigger Binding="{Binding ShowAdvanced}" Value="True">
<Setter Property="Width" Value="*" />
</DataTrigger>
</Style.Triggers>
</Style>
</ColumnDefinition.Style>
</ColumnDefinition>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
</Grid>
和中提琴,我得到顯示或隱藏一列基於一個單一的布爾檢查!