File tree Expand file tree Collapse file tree 2 files changed +20
-25
lines changed
src/BootstrapBlazor/Components/Filters Expand file tree Collapse file tree 2 files changed +20
-25
lines changed Original file line number Diff line number Diff line change 11@namespace BootstrapBlazor.Components
22
3- <Select Items =" @Items " Color =" @Color.Info" class =" is-condition" @bind- Value =" Value " ></Select >
3+ <Select Items =" @_items " Color =" @Color.Info" class =" is-condition" Value =" _value " OnValueChanged = " OnValueChanged " ></Select >
Original file line number Diff line number Diff line change 88namespace BootstrapBlazor . Components ;
99
1010/// <summary>
11- ///
11+ /// FilterLogicItem 组件用于选择过滤条件的逻辑运算符
1212/// </summary>
1313public partial class FilterLogicItem
1414{
15- private FilterLogic _value ;
16- private FilterLogic Value
17- {
18- get
19- {
20- _value = Logic ;
21- return _value ;
22- }
23- set
24- {
25- _value = value ;
26- if ( LogicChanged . HasDelegate ) LogicChanged . InvokeAsync ( value ) ;
27- }
28- }
29-
3015 /// <summary>
31- ///
16+ /// 获得/设置 逻辑运算符
3217 /// </summary>
3318 [ Parameter ]
3419 public FilterLogic Logic { get ; set ; }
3520
3621 /// <summary>
37- ///
22+ /// 获得/设置 逻辑运算符改变回调方法
3823 /// </summary>
3924 [ Parameter ]
4025 public EventCallback < FilterLogic > LogicChanged { get ; set ; }
4126
42- private IEnumerable < SelectedItem > ? Items { get ; set ; }
43-
4427 [ Inject ]
4528 [ NotNull ]
4629 private IStringLocalizer < FilterLogicItem > ? Localizer { get ; set ; }
4730
31+ private readonly List < SelectedItem > _items = [ ] ;
32+ private FilterLogic _value ;
33+
4834 /// <summary>
49- ///
35+ /// <inheritdoc/>
5036 /// </summary>
5137 protected override void OnInitialized ( )
5238 {
5339 base . OnInitialized ( ) ;
5440
55- Items = new List < SelectedItem > ( )
56- {
41+ _items . AddRange (
42+ [
5743 new SelectedItem ( "And" , Localizer [ "And" ] . Value ) ,
5844 new SelectedItem ( "Or" , Localizer [ "Or" ] . Value )
59- } ;
45+ ] ) ;
46+ }
47+
48+ private async Task OnValueChanged ( FilterLogic val )
49+ {
50+ _value = val ;
51+ if ( LogicChanged . HasDelegate )
52+ {
53+ await LogicChanged . InvokeAsync ( _value ) ;
54+ }
6055 }
6156}
You can’t perform that action at this time.
0 commit comments