File tree Expand file tree Collapse file tree 2 files changed +80
-0
lines changed
CodeBeam.MudExtensions/Components/Toggle Expand file tree Collapse file tree 2 files changed +80
-0
lines changed Original file line number Diff line number Diff line change 1+ @namespace MudExtensions
2+ @inherits MudComponentBase
3+
4+ <div class =" @Classname" style =" @GetStyle () " >
5+ @if (Toggled && ToggleContent != null )
6+ {
7+ @ToggleContent
8+ }
9+ else
10+ {
11+ @ChildContent
12+ }
13+ </div >
Original file line number Diff line number Diff line change 1+ using Microsoft . AspNetCore . Components ;
2+ using MudBlazor ;
3+ using MudBlazor . Utilities ;
4+ using System ;
5+ using System . Collections . Generic ;
6+ using System . Linq ;
7+ using System . Runtime . InteropServices ;
8+ using System . Text ;
9+ using System . Threading . Tasks ;
10+
11+ namespace MudExtensions
12+ {
13+ public partial class MudToggle : MudComponentBase
14+ {
15+
16+ protected string Classname => new CssBuilder ( )
17+ . AddClass ( Class , Toggled == false )
18+ . AddClass ( ClassToggled , Toggled == true )
19+ . Build ( ) ;
20+
21+ protected string GetStyle ( )
22+ {
23+ if ( Toggled == false )
24+ {
25+ return Style ;
26+ }
27+ else
28+ {
29+ return StyleToggled ;
30+ }
31+
32+ }
33+
34+
35+ bool _toggled ;
36+ [ Parameter ]
37+ public bool Toggled
38+ {
39+ get => _toggled ;
40+ set
41+ {
42+ if ( _toggled == value )
43+ {
44+ return ;
45+ }
46+ _toggled = value ;
47+ ToggledChanged . InvokeAsync ( ) . AndForget ( ) ;
48+ }
49+ }
50+
51+ [ Parameter ]
52+ public EventCallback < bool > ToggledChanged { get ; set ; }
53+
54+ [ Parameter ]
55+ public string ClassToggled { get ; set ; }
56+
57+ [ Parameter ]
58+ public string StyleToggled { get ; set ; }
59+
60+ [ Parameter ]
61+ public RenderFragment ChildContent { get ; set ; }
62+
63+ [ Parameter ]
64+ public RenderFragment ToggleContent { get ; set ; }
65+
66+ }
67+ }
You can’t perform that action at this time.
0 commit comments