根据Expander的IsExpanded属性值的变化动态设计Control的size

Posted CoderBaby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据Expander的IsExpanded属性值的变化动态设计Control的size相关的知识,希望对你有一定的参考价值。

简要说明:

当Expander 的IsExpanded属性为“True” 时给控件设个尺寸(此处为高度),当为“False”时给控件设另外一个值。

知识点:数据绑定、Style和Trigger

      <Grid>
        <Grid.RowDefinitions>
            <RowDefinition>
                <RowDefinition.Style>
                    <Style TargetType="RowDefinition">
                        <Setter Property="Height" Value="25" />
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding ElementName=testExpander,Path=IsExpanded}" Value="True">
                                <Setter Property="Height" Value="205" />
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </RowDefinition.Style>
            </RowDefinition>
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
            
        <Expander Header="Haha"  x:Name="testExpander" />
        <StackPanel Grid.Row="1" >
            <TabControl>
                <TabItem Header="HaHaTabItem" >
                    <ListBox>
                        <ListBoxItem Content="Blue" />
                        <ListBoxItem Content="Black" />
                        <ListBoxItem Content="Red" />
                    </ListBox>
                 </TabItem>
            </TabControl>
        </StackPanel>
    </Grid>

以上是关于根据Expander的IsExpanded属性值的变化动态设计Control的size的主要内容,如果未能解决你的问题,请参考以下文章

我无法绑定树视图上的 IsExpanded 属性

获取 WPF 扩展器标题的高度

C#XAML Setter值为True,具体取决于字符串属性值

如何根据其值的属性对地图进行排序?

根据值的属性对 PowerShell 哈希表进行排序

WPF TreeView IsExpanded 绑定不上的问题