如何在功能区窗口wpf c#中显示状态栏

Posted

技术标签:

【中文标题】如何在功能区窗口wpf c#中显示状态栏【英文标题】:how to show status bar in ribbon window wpf c# 【发布时间】:2010-12-13 07:52:47 【问题描述】:

我想在我自己的应用程序中使用类似 MS Office 2007(及更高版本)的功能区栏。任何人都可以向我提供有关如何执行此操作的链接或参考吗?

编辑: 实际上我正在使用 Microsoft 的 Ribbon Control Library,但找不到像 MS Word 这样添加状态栏的方法。

【问题讨论】:

【参考方案1】:

也许给this library 一个机会?

编辑:实际上,显然是 Microsoft have released their own。

【讨论】:

其实我用的是微软的功能区控件库,但是找不到像 MS Word 这样添加状态栏的方法。【参考方案2】:

我找到了显示StatusBar的好方法,

我希望它可以帮助其他人.. ..

<DockPanel LastChildFill="True">
    <ribbon:Ribbon DockPanel.Dock="Top">
          <ribbon:RibbonTab Label="Banking">
             <ribbon:RibbonGroup>
                  <ribbon:RibbonButton Command="me:AppCommands.Cut"/>
                  <ribbon:RibbonButton Command="me:AppCommands.Copy"/>
                  <ribbon:RibbonButton Command="me:AppCommands.Paste"/>
             </ribbon:RibbonGroup>

             <ribbon:RibbonGroup>
                  <ribbon:RibbonButton Command="me:AppCommands.AddNew"/>
                  <ribbon:RibbonButton Command="me:AppCommands.Clear" />
                  <ribbon:RibbonButton Command="me:AppCommands.Delete"/>
             </ribbon:RibbonGroup>

            <ribbon:RibbonGroup>
                  <ribbon:RibbonButton Command="me:AppCommands.DownloadStatements"/>
                  <ribbon:RibbonButton Command="me:AppCommands.DownloadCreditCards"/>
                  <ribbon:RibbonButton Command="me:AppCommands.Transfer"/>
            </ribbon:RibbonGroup>
         </ribbon:RibbonTab>
    </ribbon:Ribbon>

    <StatusBar x:Name="StatusBar"
                   VerticalAlignment="Bottom"
                   DockPanel.Dock="Bottom">
            <StatusBar.ItemsPanel>
                <ItemsPanelTemplate>
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="4*" />
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                    </Grid>
                </ItemsPanelTemplate>
            </StatusBar.ItemsPanel>
            <StatusBarItem Margin="0,-3,0,-2" BorderThickness="1">
                <TextBlock x:Name="statusBarText">www.247moneymakingschemes.blogspot.com</TextBlock>
            </StatusBarItem>
            <StatusBarItem Grid.Column="1">
                <ProgressBar Width="80"
                             Height="18"
                             Value="30" />
            </StatusBarItem>
            <StatusBarItem Grid.Column="3">
                <TextBlock>Go!</TextBlock>
            </StatusBarItem>
        </StatusBar>

       <TextBlock DockPanel.Dock="Top" Content="Put your main content/items control here as last child in dock panel" />
</DockPanel>

干杯..

【讨论】:

【参考方案3】:

Microsoft 已将其功能区控件正式提供给 WPF。它是免费的,而且是真正的交易,从马口中脱颖而出。你可以阅读它here,并下载它here。

【讨论】:

以上是关于如何在功能区窗口wpf c#中显示状态栏的主要内容,如果未能解决你的问题,请参考以下文章

如何在WPF中单击菜单项时在父窗口下打开子窗口?

当前控件的工具提示中的 WPF C# 状态栏标签内容

禁用 WPF 窗口标题栏中的关闭按钮 (C#)

如何在WPF中窗口栏上添加按钮?

c#中的状态栏(statusStrip)不能及时更新,如何解决?

WPF编程,指定窗口图标窗口标题,使得在运行状态下任务栏显示窗口图标的一种方法。