【问题标题】:Toggle button and vertical grid splitter is not working simultaneously切换按钮和垂直网格拆分器无法同时工作
【发布时间】:2020-09-09 10:05:44
【问题描述】:

这是我的示例代码,请帮助我同时实现这两个目标Image 单击时切换按钮折叠和可见的列和垂直拆分按钮。

在下图中。首先添加切换按钮和第一列包含两列。 它包含第二个子列是折叠或禁用基于切换按钮单击。 并且 Spltter 正在两个主要专栏之外工作,请尽快帮助我

<Window.Resources>
    <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
</Window.Resources>
<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
        <ColumnDefinition Width="5"/>
        <ColumnDefinition  />
    </Grid.ColumnDefinitions>
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="40" />
            <ColumnDefinition Width="300"/>                
        </Grid.ColumnDefinitions>
        <Border Background="Green"
                Grid.Column="0">
            <Grid Grid.Column="1"
                  Visibility="{Binding IsChecked, ElementName=toggleButton, Converter={StaticResource BooleanToVisibilityConverter}}">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="40"/>
                    <ColumnDefinition  Width="300" />
                </Grid.ColumnDefinitions>

                <WrapPanel Grid.Column="1"
                           Background="Aqua" />
            </Grid>
        </Border>
        <ToggleButton x:Name="toggleButton"
                      Width="30"
                      Height="30"
                      Margin="0,10,10,0"
                      IsChecked="True"
                      HorizontalAlignment="Left"
                      VerticalAlignment="Top" />
    </Grid>

    <GridSplitter Width="5"
                  Grid.Column="1"
                  ResizeBehavior="CurrentAndNext" />
    <Grid Grid.Column="2"></Grid>

</Grid>

【问题讨论】:

    标签: wpf togglebutton gridsplitter


    【解决方案1】:

    通过阅读您的问题,我相信这就是您想要实现的目标。如果我没有正确理解您,请告诉我。

            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="40" />
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="5" />
                    <ColumnDefinition />
                </Grid.ColumnDefinitions>
                <Border
                    Grid.Column="0"
                    Background="Green">
                    <ToggleButton x:Name="toggleButton"
                        Width="30"
                        Height="30"
                        Margin="0,10,10,0"
                        HorizontalAlignment="Left"
                        VerticalAlignment="Top"
                        IsChecked="True" />
                </Border>
                <Grid
                    Grid.Column="1"
                    MaxWidth="300"
                    Visibility="{Binding ElementName=toggleButton, Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}">
                    <WrapPanel Background="Aqua">
                        <TextBlock
                            Margin="8"
                            Text="Item 01" />
                        <TextBlock
                            Margin="8"
                            Text="Item 02" />
                        <TextBlock
                            Margin="8"
                            Text="Item 03" />
                        <TextBlock
                            Margin="8"
                            Text="Item 04" />
                        <TextBlock
                            Margin="8"
                            Text="Item 05" />
                    </WrapPanel>
                </Grid>
                <GridSplitter
                    Grid.Column="1"
                    Width="5"
                    Visibility="{Binding ElementName=toggleButton, Path=IsChecked, Converter={StaticResource BooleanToVisibilityConverter}}" />
                <Grid Grid.Column="3">
                    <TextBlock
                        HorizontalAlignment="Center"
                        VerticalAlignment="Center"
                        Text="Column 2" />
                </Grid>
            </Grid>
    

    【讨论】:

    • 谢谢@Keithernet。这对我来说是我的期望。
    • @DamateNasir 你能把我的答案标记为正确的吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-06
    • 2021-11-28
    • 2012-10-03
    • 1970-01-01
    • 1970-01-01
    • 2020-02-09
    相关资源
    最近更新 更多