WPF中工具栏样式的震击菜单的解决方法

WPF中工具栏样式的震击菜单的解决方法,wpf,menu,styles,toolbar,Wpf,Menu,Styles,Toolbar,我很难在中玩来玩得更好。我的示例(如下所示)位于VS2010中默认WPFAApplication项目模板的空窗口中: <DockPanel> <ToolBar DockPanel.Dock="Top"> <Button Content="Button 1"/> <Button Content="Button 2"/> <Separator/> <CheckBo

我很难在
中玩
来玩得更好。我的示例(如下所示)位于VS2010中默认WPFAApplication项目模板的空窗口中:

<DockPanel>
    <ToolBar DockPanel.Dock="Top">
        <Button Content="Button 1"/>
        <Button Content="Button 2"/>
        <Separator/>
        <CheckBox Content="CheckBox 1"/>
        <CheckBox Content="CheckBox 2"/>
        <Separator/>
        <Menu>
            <MenuItem Header="Menu">
                <MenuItem Header="File">
                    <MenuItem Header="Copy"/>
                    <MenuItem Header="Paste"/>
                </MenuItem>
            </MenuItem>
        </Menu>
    </ToolBar>
    <Menu DockPanel.Dock="Top">
        <MenuItem Header="Menu">
            <MenuItem Header="File">
                <MenuItem Header="Copy"/>
                <MenuItem Header="Paste"/>
            </MenuItem>
        </MenuItem>
    </Menu>
    <Grid>

    </Grid>
</DockPanel>

默认样式错误对齐标签和悬停指示器:

我既不是设计师,也不是WPF大师,因此我试图让菜单样式更接近按钮的简单尝试以灾难性的失败告终


有没有人有一个简单的(最好是基于
Toolbar.MenuStyleKey
)样式来重新排列菜单?

这里有一个在KaXaml中似乎有效的快捷方式:

    <ToolBar DockPanel.Dock="Top">
        <Button Content="Button 1"/>
        <Button Content="Button 2"/>
        <Separator/>
        <CheckBox Content="CheckBox 1"/>
        <CheckBox Content="CheckBox 2"/>
        <Separator/>
        <Menu Margin="0, -1, 0, 0" Style="{x:Null}">
            <MenuItem Header="Menu">
                <MenuItem Header="File">
                    <MenuItem Header="Copy"/>
                    <MenuItem Header="Paste"/>
                </MenuItem>
            </MenuItem>
        </Menu>
    </ToolBar>

P.S:当菜单作为数据模板应用时,这种方法不起作用。我现在已经设置了一个不同的边距和透明的背景,它仍然不是完美的,但看起来仍然比默认的要好。