简体   繁体   English

当两个扩展器都被选中时启用gridsplitter

[英]Enable gridsplitter when both expander IsChecked

I have a grid with three rows. 我有一个三行网格。

First and last rows are occupied by expander and the second row is occupied by gridsplitter. 第一行和最后一行由扩展器占用,第二行由gridsplitter占用。

I want to accomplish a functionality to gridsplitter. 我想完成gridsplitter的功能。 I want the gridsplitter to be visible only when both my expander is unfolded Visibility ="visible" . 我希望仅当两个扩展器都展开时,网格拆分器才可见。Visibility Visibility ="visible"

How can I set this behavior to the gridsplitter? 如何将这种行为设置为gridsplitter?

How about MultiDataTrigger 怎么样MultiDataTrigger

Here is the sample for your scenario. 这是您的方案的示例。

<StackPanel>
    <Expander IsExpanded="True" x:Name="exp1">
        <TextBlock Text="In Expander 1" />
    </Expander>
    <Expander IsExpanded="True" x:Name="exp2">
       <TextBlock Text="In Expander 2" />   
    </Expander>    
    <GridSplitter >
        <GridSplitter.Style>
            <Style TargetType="GridSplitter">
                <Setter Property="Visibility" Value="Collapsed"/>
                <Style.Triggers>
                    <MultiDataTrigger>
                        <MultiDataTrigger.Conditions>
                            <Condition Binding="{Binding ElementName=exp1,  Path=IsExpanded}" Value="True" />
                            <Condition Binding="{Binding ElementName=exp2,  Path=IsExpanded}" Value="True" />
                        </MultiDataTrigger.Conditions>
                        <Setter Property="Visibility" Value="Visible" />

                    </MultiDataTrigger>
                </Style.Triggers>

            </Style>
        </TextBlock.Style>
    </GridSplitter>
</StackPanel>

Hope that helps 希望能有所帮助

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM