File tree Expand file tree Collapse file tree 8 files changed +44
-12
lines changed
example/AntDesign.ProLayout.Wasm/Shared Expand file tree Collapse file tree 8 files changed +44
-12
lines changed Original file line number Diff line number Diff line change 66 Theme =" MenuTheme.Light"
77 MenuAccordion
88 @bind-OpenKeys =" openKeys"
9- @bind-Collapsed =" collapsed" >
9+ @bind-Collapsed =" collapsed"
10+ @bind-SelectedKeys =selectedKeys >
1011 <HeaderContentRender >
1112 <Menu Mode =" MenuMode.Horizontal" Theme =" MenuTheme.Dark" >
1213 <MenuItem OnClick =" ResetMenu" >Refresh Menu</MenuItem >
4950
5051 private bool collapsed ;
5152 private string [] openKeys = [];
53+ private string [] selectedKeys = [" welcome" ];
5254
5355 protected override async Task OnInitializedAsync ()
5456 {
5759 data [0 ].IconFont = " icon-tuichu" ;
5860 data .Insert (0 , new MenuDataItem
5961 {
60- TitleTemplate = @< span >< Icon Type = " user" >< / Icon > Custom Menu < / span > ,
62+ TitleTemplate = @< span >< Icon Type = " user" >< / Icon >< span > Custom Menu < / span < / span > ,
6163 });
6264 MenuData = data .ToArray ();
6365 }
Original file line number Diff line number Diff line change 2222 SiderWidth =" SiderWidth"
2323 Accordion =" MenuAccordion"
2424 OnCollapse =" HandleCollapse"
25- OpenKeysChanged =" OpenKeysChanged" >
25+ OpenKeysChanged =" OpenKeysChanged"
26+ OnMenuHeaderClick =" @OnMenuHeaderClick"
27+ OnMenuItemClicked =" OnMenuItemClicked"
28+ SelectedKeys =" SelectedKeys"
29+ SelectedKeysChanged =" SelectedKeysChanged"
30+ >
2631 </SiderMenu >
2732 </CascadingValue >
2833 </CascadingValue >
Original file line number Diff line number Diff line change @@ -57,11 +57,12 @@ public partial class BasicLayout : IBasicLayout
5757 [ Parameter ] public string ColSize { get ; set ; } = "lg" ;
5858 [ Parameter ] public RenderFragment RightContentRender { get ; set ; }
5959 [ Parameter ] public RenderFragment HeaderContentRender { get ; set ; }
60- [ Inject ] public ILogger < BasicLayout > Logger { get ; set ; }
60+ [ Parameter ] public string [ ] SelectedKeys { get ; set ; }
61+ [ Parameter ] public EventCallback < string [ ] > SelectedKeysChanged { get ; set ; }
62+ [ Parameter ] public EventCallback < MenuItem > OnMenuItemClicked { get ; set ; }
6163
6264 protected override void OnInitialized ( )
6365 {
64- Logger . LogInformation ( "BasicLayout initialized." ) ;
6566 base . OnInitialized ( ) ;
6667 SetStyle ( ) ;
6768 SetClassMap ( ) ;
@@ -80,7 +81,7 @@ protected void SetStyle()
8081 {
8182 var hasLeftPadding = FixSiderbar && Layout != Layout . Top && ! IsMobile ;
8283 var paddingLeft = hasLeftPadding ? Collapsed ? 48 : SiderWidth : 0 ;
83- Logger . LogInformation ( $ "HasLeftPadding: { hasLeftPadding } , Collapsed: { Collapsed } , Padding: { paddingLeft } " ) ;
84+
8485 _genLayoutStyle = MenuRender ? $ "padding-left: { paddingLeft } px; position: relative;" : "" ;
8586 _weakModeStyle = ColorWeak ? "filter: invert(80%);" : "" ;
8687 }
Original file line number Diff line number Diff line change 88 Style =" @Style"
99 Accordion =" @Accordion"
1010 Class =" @ClassMapper.Class"
11- OpenKeysChanged =" OpenKeysChanged" >
11+ OpenKeysChanged =" OpenKeysChanged"
12+ OnMenuItemClicked =" OnMenuItemClicked"
13+ SelectedKeys =" SelectedKeys"
14+ SelectedKeysChanged =" SelectedKeysChanged" >
1215 @menuItemTemplate(MenuData , false)
1316</Menu >
1417
Original file line number Diff line number Diff line change @@ -14,6 +14,11 @@ internal interface IBaseMenu : IPureSettings
1414 EventCallback < bool > OnCollapse { get ; }
1515 string [ ] OpenKeys { get ; }
1616 EventCallback < string [ ] > OpenKeysChanged { get ; set ; }
17+
18+ string [ ] SelectedKeys { get ; }
19+ EventCallback < string [ ] > SelectedKeysChanged { get ; set ; }
20+
21+ EventCallback < MenuItem > OnMenuItemClicked { get ; set ; }
1722 }
1823
1924 public partial class BaseMenu : IBaseMenu
@@ -28,11 +33,12 @@ public partial class BaseMenu : IBaseMenu
2833
2934 [ Parameter ] public bool Accordion { get ; set ; }
3035
31- [ Inject ] public ILogger < BaseMenu > Logger { get ; set ; }
36+ [ Parameter ] public EventCallback < MenuItem > OnMenuItemClicked { get ; set ; }
37+
38+ [ Parameter ]
39+ public string [ ] SelectedKeys { get ; set ; } = [ ] ;
3240
33- protected override void OnInitialized ( )
34- {
35- Logger . LogInformation ( "BaseMenu initialized." ) ;
36- }
41+ [ Parameter ]
42+ public EventCallback < string [ ] > SelectedKeysChanged { get ; set ; }
3743 }
3844}
Original file line number Diff line number Diff line change 3636 OpenKeys =" OpenKeys"
3737 Accordion =" @Accordion"
3838 OpenKeysChanged =" OpenKeysChanged"
39+ OnMenuItemClicked =" OnMenuItemClicked"
40+ SelectedKeys =" SelectedKeys"
41+ SelectedKeysChanged =" SelectedKeysChanged"
3942 Style =" @(" width: ' 100%' " )" />
4043 </div >
4144
Original file line number Diff line number Diff line change @@ -64,6 +64,15 @@ public SiderTheme SiderTheme
6464 set => NavTheme = value == SiderTheme . Light ? MenuTheme . Light : MenuTheme . Dark ;
6565 }
6666
67+ [ Parameter ]
68+ public string [ ] SelectedKeys { get ; set ; }
69+
70+ [ Parameter ]
71+ public EventCallback < string [ ] > SelectedKeysChanged { get ; set ; }
72+
73+ [ Parameter ]
74+ public EventCallback < MenuItem > OnMenuItemClicked { get ; set ; }
75+
6776 private async Task HandleOnCollapse ( bool collapsed )
6877 {
6978 if ( ! IsMobile && OnCollapse . HasDelegate )
Original file line number Diff line number Diff line change @@ -30,6 +30,9 @@ public partial class TopNavHeader : ITopNavHeader
3030 [ Parameter ] public bool Hide { get ; set ; }
3131 [ Parameter ] public List < RenderFragment > Links { get ; set ; }
3232 [ Parameter ] public EventCallback < string [ ] > OpenKeysChanged { get ; set ; }
33+ [ Parameter ] public string [ ] SelectedKeys { get ; set ; }
34+ [ Parameter ] public EventCallback < string [ ] > SelectedKeysChanged { get ; set ; }
35+ [ Parameter ] public EventCallback < MenuItem > OnMenuItemClicked { get ; set ; }
3336
3437 protected override void OnInitialized ( )
3538 {
You can’t perform that action at this time.
0 commit comments