首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF Ribbon ApplicationMenu右对齐?

WPF Ribbon ApplicationMenu右对齐?
EN

Stack Overflow用户
提问于 2009-09-29 13:01:37
回答 2查看 3.7K关注 0票数 4

在阅读教程时,“ribbon.ApplicationhMenu”总是出现在屏幕的左边,而不是像Office2007、Paint (Windows7)和WordPad (Windows7)那样出现在右边。

有什么方法可以改变这一点吗?

谢谢

(问题的示例是http://cid-a45fe702de180b23.skydrive.live.com/self.aspx/Public/RibbonAnnoyance.png (作为新用户,我只能发布1个超链接))

EN

回答 2

Stack Overflow用户

发布于 2009-09-30 11:48:12

感谢您的回复。是,我正在使用办公室团队的功能区/ FluentUI

对不起,我无法登录到我在大约22小时前创建的'M.Ahrens‘帐户(它不是OpenID帐户,我不确定如何在没有OpenID的情况下登录,所以我现在让我自己成为OpenID)。

我之前无法发布教程的链接(因为新用户只能发布一个超链接),但它在这里:http://www.renevo.com/blogs/dotnet/archive/2009/02/10/your-first-wpf-ribbon-application.aspx

这不仅仅发生在本教程中,它还发生在我制作的所有其他ribbon应用程序中(包括Microsoft示例)。我已经尝试过流动:

*HorizontalAlignment=“正确”

*HorizontalContentAlignment=“正确”

*FlowDirection="RightToLeft“(使ApplicationMenu向右移动,但切换列)

*默认

但这看起来并没有什么不同,ApplicationMenu仍然在“左侧”(除非我最大化窗口)。

M.Ahrens

+++++++++++++++++++++++++

编辑(添加了代码示例):

代码语言:javascript
复制
<r:RibbonWindow
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
    Height="400" Width="400">

    <DockPanel>
        <r:Ribbon DockPanel.Dock="Top">
            <r:Ribbon.ApplicationMenu>
                <r:RibbonApplicationMenu>
                </r:RibbonApplicationMenu>
            </r:Ribbon.ApplicationMenu>
        </r:Ribbon>
    </DockPanel>
</r:RibbonWindow>
票数 1
EN

Stack Overflow用户

发布于 2009-09-30 11:02:57

你使用的是OfficeUI团队的WPF Ribbon吗?

我们正在使用它,并且不会发生任何类似的事情。可能会发布一些你用来创建应用程序菜单的XAML。

编辑:看一下你的代码,我怀疑DockPanel有点傻。

这就是我们构建布局以添加功能区的方式

代码语言:javascript
复制
<r:RibbonWindow x:Class="MyAssembly.Main"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
Title="The Title"
Height="450" 
Width="600" >

<Grid x:Name="grdMain">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <r:Ribbon Title="The Title" x:Name="ribbonMain" Grid.Row="0">
        <!--Quick Access Toolbar-->
        <r:Ribbon.QuickAccessToolBar>
            <r:RibbonQuickAccessToolBar>
            </r:RibbonQuickAccessToolBar>
        </r:Ribbon.QuickAccessToolBar>

        <!--Application Menu-->
        <r:Ribbon.ApplicationMenu>
            <r:RibbonApplicationMenu x:Name="mnuApplication">
                <!--App Menu Items-->
                <r:RibbonApplicationMenu.Items>
                </r:RibbonApplicationMenu.Items>
                <!--App Menu Recent Item List-->
                <r:RibbonApplicationMenu.RecentItemList>
                    <StackPanel>
                        <r:RibbonLabel>Recent Items</r:RibbonLabel>
                        <r:RibbonSeparator/>
                        <r:RibbonHighlightingList x:Name="lstRecentItems"/>
                    </StackPanel>
                </r:RibbonApplicationMenu.RecentItemList>
                <!--App Menu Footer-->
                <r:RibbonApplicationMenu.Footer>
                </r:RibbonApplicationMenu.Footer>
            </r:RibbonApplicationMenu>
        </r:Ribbon.ApplicationMenu>
    </r:Ribbon>

    <Grid Grid.Row="1">
      <!--This is the aread under the ribbon. Place layout things inside of this space-->
    </Grid>
</Grid> </r:RibbonWindow> <!--This is closing tag is on this line as SO is being silly-->

正如我提到的,我怀疑DockPanel有点愚蠢,尽管现在(凌晨12点)对我来说有点晚了。尝试将此代码复制到您的XAML中,看看会发生什么。

坦率地说,我并不完全信任DockPanels,网格对我来说工作得更好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1492400

复制
相关文章

相似问题

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