状态栏中的Gridsplitter

时间:2015-09-24 18:39:52

标签: wpf xaml statusbar gridsplitter

我正在尝试将网格分割器放在状态栏中。我已覆盖项目面板模板以在状态栏中放置网格。我希望能够来回滑动网格列。不幸的是,我不能让网格分割器出现。我正在使用下面的xaml代码。感谢您提前的时间。

<StatusBar>
            <StatusBar.ItemsPanel>
                <ItemsPanelTemplate>
                    <Grid IsItemsHost="True">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="10" />
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="10" />
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="10" />
                            <ColumnDefinition Width="Auto" />
                        </Grid.ColumnDefinitions>
                    </Grid>
                </ItemsPanelTemplate>
            </StatusBar.ItemsPanel>
            <StatusBarItem Grid.Column="0">
                <Label Content="blah" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="1">
                <GridSplitter Width="10" HorizontalAlignment="Stretch" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="2">
                <Label Content="blah1" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="3">
                <GridSplitter Width="10" HorizontalAlignment="Stretch" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="4">
                <Label Content="blah2" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="5">
                <GridSplitter Width="10" HorizontalAlignment="Stretch" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="6">
                <Label Content="blah3" />
            </StatusBarItem>
        </StatusBar>

1 个答案:

答案 0 :(得分:1)

您的GridSplitter不是Grid的直接后裔。它包含在StatusBarItem中。因此,这不适用于该配置。

您只需使用Grid代替背景和边框,使其看起来像StatusBarStatusBar是一个相对简单的控件,所以制作看起来像它的东西不应该太大。