Skip to content

Commit d306a56

Browse files
authored
Menu improvements (#2591)
* Transparent header menu * Filling the available height with menu headers + additional menu examples in the demo
1 parent 5ca41fa commit d306a56

File tree

2 files changed

+55
-12
lines changed

2 files changed

+55
-12
lines changed

MainDemo.Wpf/MenusAndToolBars.xaml

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@
1313
<smtx:XamlDisplay
1414
UniqueKey="menus_1"
1515
DockPanel.Dock="Top"
16-
Margin="5 5 0 5">
17-
<Menu IsMainMenu="True">
16+
Margin="5 5 0 15">
17+
<Menu IsMainMenu="True" Height="48">
1818
<MenuItem Header="_File">
1919
<MenuItem
2020
Header="Save"
2121
Icon="{materialDesign:PackIcon Kind=ContentSave}">
2222
</MenuItem>
23-
23+
2424
<MenuItem Header="Save As.."/>
2525

2626
<MenuItem
@@ -29,16 +29,16 @@
2929
Icon="{materialDesign:PackIcon Kind=ExitToApp}"/>
3030

3131
<Separator/>
32-
32+
3333
<MenuItem
3434
Header="Excellent"
3535
IsCheckable="True"
3636
IsChecked="True"/>
37-
37+
3838
<MenuItem
3939
Header="Rubbish"
4040
IsCheckable="True"/>
41-
41+
4242
<MenuItem
4343
Header="Dig Deeper"
4444
InputGestureText="Ctrl+D">
@@ -49,15 +49,15 @@
4949
Header="Disappointment"
5050
IsCheckable="True"/>
5151
</MenuItem>
52-
52+
5353
<MenuItem
5454
Header="Look Deeper"
5555
InputGestureText="Ctrl+D">
5656
<MenuItem Header="Plain"/>
5757
<MenuItem Header="Ice Cream"/>
5858
</MenuItem>
5959
</MenuItem>
60-
60+
6161
<MenuItem Header="_Edit">
6262
<MenuItem
6363
Header="_Cut"
@@ -77,6 +77,46 @@
7777
</Menu>
7878
</smtx:XamlDisplay>
7979

80+
<smtx:XamlDisplay
81+
UniqueKey="bigMenu"
82+
DockPanel.Dock="Top"
83+
Margin="5 5 0 5">
84+
<materialDesign:Card Height="80">
85+
<Menu>
86+
<MenuItem Header="Big">
87+
<MenuItem Header="Test 1"/>
88+
<MenuItem Header="Test 1"/>
89+
<MenuItem Header="Test 1"/>
90+
</MenuItem>
91+
<MenuItem Header="Menu">
92+
<MenuItem Header="Test 1"/>
93+
<MenuItem Header="Test 1"/>
94+
<MenuItem Header="Test 1"/>
95+
</MenuItem>
96+
</Menu>
97+
</materialDesign:Card>
98+
</smtx:XamlDisplay>
99+
100+
<smtx:XamlDisplay
101+
UniqueKey="smallMenu"
102+
DockPanel.Dock="Top"
103+
Margin="5 5 0 20">
104+
<materialDesign:Card Height="25">
105+
<Menu>
106+
<MenuItem Header="Small">
107+
<MenuItem Header="Test 1"/>
108+
<MenuItem Header="Test 1"/>
109+
<MenuItem Header="Test 1"/>
110+
</MenuItem>
111+
<MenuItem Header="Menu">
112+
<MenuItem Header="Test 1"/>
113+
<MenuItem Header="Test 1"/>
114+
<MenuItem Header="Test 1"/>
115+
</MenuItem>
116+
</Menu>
117+
</materialDesign:Card>
118+
</smtx:XamlDisplay>
119+
80120
<smtx:XamlDisplay
81121
UniqueKey="menus_2"
82122
DockPanel.Dock="Top"

MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.Menu.xaml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@
8686
TargetType="{x:Type MenuItem}"
8787
x:Key="MaterialDesignMenuItem"
8888
BasedOn="{x:Null}">
89+
<Setter
90+
Property="Background"
91+
Value="{DynamicResource MaterialDesignPaper}" />
8992
<Setter
9093
Property="Padding"
9194
Value="24 0 24 0"></Setter>
@@ -114,7 +117,7 @@
114117
x:Name="templateRoot"
115118
BorderBrush="{TemplateBinding BorderBrush}"
116119
BorderThickness="{TemplateBinding BorderThickness}"
117-
Background="{TemplateBinding Background}"
120+
118121
SnapsToDevicePixels="True" />
119122
<Border
120123
x:Name="BackgroundRoot"
@@ -248,7 +251,7 @@
248251
CacheMode="{Binding RelativeSource={RelativeSource Self}, Path=(wpf:ShadowAssist.CacheMode)}">
249252
<Border
250253
x:Name="SubMenuBorder"
251-
Background="{Binding Path=Background, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=MenuBase}}"
254+
Background="{DynamicResource MaterialDesignPaper}"
252255
Effect="{DynamicResource MaterialDesignShadowDepth1}"
253256
CornerRadius="2">
254257

@@ -334,7 +337,7 @@
334337
Value="16 0" />
335338
<Setter
336339
Property="Height"
337-
Value="48" />
340+
Value="{Binding ActualHeight, RelativeSource={RelativeSource AncestorType={x:Type Menu}}}" />
338341
<Setter
339342
TargetName="templateRoot"
340343
Property="CornerRadius"
@@ -471,7 +474,7 @@
471474

472475
<Setter
473476
Property="Background"
474-
Value="{DynamicResource MaterialDesignPaper}" />
477+
Value="Transparent" />
475478
<Setter
476479
Property="FontFamily"
477480
Value="{StaticResource MaterialDesignFont}" />

0 commit comments

Comments
 (0)