首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在StatusBar中使用分隔符

在StatusBar中使用分隔符
EN

Stack Overflow用户
提问于 2012-01-27 05:10:30
回答 1查看 9.6K关注 0票数 7

我有一个带有StatusBar控件的WPF窗口。下面是我的状态栏的xaml。我正在尝试在StatusBarItems之间放置一个分隔符。但实际情况是,所有的分隔符都位于第一个StatusBarItem之后。

如何让分隔符定位在StatusBar中的每一项之后?

我确实注意到,如果我没有使用ItemsPanelTemplate,分隔符可以正常工作。如何让下面的xaml中的分隔符正确定位?

代码语言:javascript
复制
        <StatusBar Grid.Row="2" Height="23" Name="myStatusBar" VerticalAlignment="Bottom" >
        <StatusBar.ItemsPanel>
            <ItemsPanelTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="*"/>
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="100"/>
                        <ColumnDefinition Width="*"/>
                        <ColumnDefinition Width="100"/>
                        <ColumnDefinition Width="100"/>
                        <ColumnDefinition Width="100"/>
                    </Grid.ColumnDefinitions>
                </Grid>
            </ItemsPanelTemplate>
        </StatusBar.ItemsPanel>
        <StatusBarItem Grid.Column="0">
            <StackPanel Orientation="Horizontal">
                <Image Source="..\Images\bullet_green.png" Height="15" Width="15" />
                <TextBlock Name="txtStatus" Height="18" Width="77" Text="{Binding StatusBarStatus}"/>
            </StackPanel>
        </StatusBarItem>
<Separator Width="1"/>
        <StatusBarItem Grid.Column="1">
            <StackPanel Orientation="Horizontal">
                <Image Source="..\Images\user_add.png" Height="15" Width="15" />
                <TextBlock Name="txtCurrentContact" Text="{Binding StatusBarCurrentContact}" />
            </StackPanel>
        </StatusBarItem>
<Separator Width="1"/>
        <StatusBarItem Grid.Column="2">
            <!--<ProgressBar Value="30" Width="80" Height="18"/>-->
            <StackPanel Orientation="Horizontal">
                <Image Source="..\Images\database03.png" Height="15" Width="15" />
                <TextBlock Name="txtDatabase" Text="{Binding StatusBarDatabase}" />
            </StackPanel>
        </StatusBarItem>
<Separator Width="1"/>
        <StatusBarItem Grid.Column="3">
            <TextBlock Name="txtMode" Text="{Binding StatusBarMode}"/>
        </StatusBarItem>

        <StatusBarItem Grid.Column="4">
            <TextBlock Name="txtTally" Text="{Binding StatusBarTally}"/>
        </StatusBarItem>
    </StatusBar>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-27 05:38:38

所有分隔符都在第0列中。将它们放在一个列中,即:

代码语言:javascript
复制
 <StatusBarItem Grid.Column="0">
        <StackPanel Orientation="Horizontal">
            <Image Source="..\Images\bullet_green.png" Height="15" Width="15" />
            <TextBlock Name="txtStatus" Height="18" Width="77" Text="{Binding StatusBarStatus}"/>
        </StackPanel>
    </StatusBarItem>
    <Separator Width="1" Grid.ColumnSpan="2" Grid.Column="0" HorizontalAlignment="Center"/>
    <StatusBarItem Grid.Column="1">
        <StackPanel Orientation="Horizontal">
            <Image Source="..\Images\user_add.png" Height="15" Width="15" />
            <TextBlock Name="txtCurrentContact" Text="{Binding StatusBarCurrentContact}" />
        </StackPanel>
    </StatusBarItem>
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9025385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档