Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.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# 如何设置菜单项背景的样式_C#_Wpf_Menu_Background - Fatal编程技术网

C# 如何设置菜单项背景的样式

C# 如何设置菜单项背景的样式,c#,wpf,menu,background,C#,Wpf,Menu,Background,我不知道如何把背景从乏味的灰色改成其他颜色。当我更改MenuItems背景时,更改的只是项目背景本身,而不是整个背景。有人知道如何设计它吗 以下是我当前菜单的图像: 我可以这么做,但是边境怎么办 试试看: MSDN: 更新: 我的上述解决方案不会像你提到的那样改变整个背景。 要创建一个全新的样式,请阅读以下内容:当我这样做时,菜单已全部消失。@FireFly3000:您所说的全部消失是什么意思??顺便问一下,您是否已将OverridesDefaultStyle设置为true?我不允

我不知道如何把背景从乏味的灰色改成其他颜色。当我更改
MenuItem
s背景时,更改的只是项目背景本身,而不是整个背景。有人知道如何设计它吗

以下是我当前菜单的图像:

我可以这么做,但是边境怎么办

试试看:


MSDN:


更新: 我的上述解决方案不会像你提到的那样改变整个背景。
要创建一个全新的样式,请阅读以下内容:

当我这样做时,菜单已全部消失。@FireFly3000:您所说的
全部消失是什么意思?
?顺便问一下,您是否已将OverridesDefaultStyle设置为true?我不允许添加“基于”属性。执行此操作时,targetType会发送以下错误:目标类型System.Windows.Controls.Menu无法转换为基本类型System.String???当我按照您的代码操作时,菜单将消失。当我删除覆盖行时,每个项目的背景都会改变,但菜单周围仍有边框。我在问题中添加了一个这样的图像。是的,但是正如你所看到的,在我的例子中,子菜单周围仍然有一个灰色的边框。
 <Menu Background="Gray" Height="23">
            <MenuItem Header="Menu1" Background="Green">
                <MenuItem Header="sub1" Background="Red"/>
                <MenuItem Header="sub2" Background="Yellow"/>
            </MenuItem>
     </Menu>