Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# RibbonaApplication功能表从左到右,而不是从下到下_C#_Wpf_Menu_Caliburn.micro_Ribbon - Fatal编程技术网

C# RibbonaApplication功能表从左到右,而不是从下到下

C# RibbonaApplication功能表从左到右,而不是从下到下,c#,wpf,menu,caliburn.micro,ribbon,C#,Wpf,Menu,Caliburn.micro,Ribbon,我们在C#WPF应用程序中使用的是Caliburn Micro,我们有一个非常标准的RibbonaApplicationMenuView.xaml: <RibbonApplicationMenu x:Class="NatWa.MidOffice.Modules.Shared.Ribbon.RibbonApplicationMenuView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" x

我们在C#WPF应用程序中使用的是
Caliburn Micro
,我们有一个非常标准的
RibbonaApplicationMenuView.xaml

<RibbonApplicationMenu x:Class="NatWa.MidOffice.Modules.Shared.Ribbon.RibbonApplicationMenuView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:ribbon="clr-namespace:NatWa.MidOffice.Modules.Shared.Ribbon"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    d:DataContext="{d:DesignData RibbonApplicationMenuViewModel}" mc:Ignorable="d">

    <RibbonApplicationMenu.Resources>
        <CollectionViewSource x:Key="SourceItems">
            <CollectionViewSource.Source>
                <ribbon:ViewCollection Source="{Binding Items}"/>
            </CollectionViewSource.Source>
        </CollectionViewSource>
    </RibbonApplicationMenu.Resources>

    <RibbonApplicationMenu.ItemsSource>
        <Binding Source="{StaticResource SourceItems}"/>
    </RibbonApplicationMenu.ItemsSource>

</RibbonApplicationMenu>
添加的项目如下所示:

private static RibbonApplicationMenuViewModel CreateApplicationMenu(IEventAggregator eventAggregator)
{
    var menu = new RibbonApplicationMenuViewModel();
    menu.Items.Add(new RibbonApplicationMenuItemViewModel<ExitCommand>(i18n.Afsluiten, eventAggregator));
    menu.Items.Add(new RibbonApplicationMenuItemViewModel<CheatSheetCommand>(i18n.CheatSheet, eventAggregator));
    return menu;
}
私有静态RibbonApplicationMenuViewModel CreateApplicationMenu(IEventAggregator事件聚合器)
{
var menu=新建RibbonApplicationMenuViewModel();
添加(新的RibbonApplicationMenuItemViewModel(i18n.Afsluiten,eventAggregator));
添加(新的RibbonApplicationMenuItemViewModel(i18n.CheatSheet,eventAggregator));
返回菜单;
}
这将导致出现以下菜单:

然而,我想要的是让这两个项目彼此相邻,就像我所做的以下MS Paint修改一样:


有人知道我应该在
RibbonaApplication功能表
上使用什么
属性
,或者我应该在自定义
样式
中添加什么吗?我查看了RibbonaApplication功能表属性,没有找到任何明显的应该用于此功能的内容(除非我忽略了它)。

我认为您应该使用

<RibbonTab> 
<RibbonGroup>
<RibbonMenuItem>

</RibbonMenuItem>
</RibbonGroup>
</RibbonTab> 


用于以水平方式排列。直接添加项目可能不会产生真正有意义的预期结果

。但是我应该在您提到的这些属性中添加/修改哪些属性,以便使它们水平?
<RibbonTab> 
<RibbonGroup>
<RibbonMenuItem>

</RibbonMenuItem>
</RibbonGroup>
</RibbonTab>