diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index b0f09bf9be284d9d63c0143c97b4b7c415ba65e1..3ad979dc36c94f08c1574effdb2b02ddc096eb31 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@ - 6.10.2 + 6.10.3-beta01 diff --git a/src/BootstrapBlazor/Components/Slider/Slider.razor b/src/BootstrapBlazor/Components/Slider/Slider.razor index 65faf735d63b87b9cd0782a47d3ac8f20f4a72ab..5dc3089287b983cee64a622080c089a9fca10d58 100644 --- a/src/BootstrapBlazor/Components/Slider/Slider.razor +++ b/src/BootstrapBlazor/Components/Slider/Slider.razor @@ -1,5 +1,5 @@ @namespace BootstrapBlazor.Components -@inherits SliderBase +@inherits BootstrapComponentBase
diff --git a/src/BootstrapBlazor/Components/Slider/Slider.razor.cs b/src/BootstrapBlazor/Components/Slider/Slider.razor.cs index 9d04ea4e766a37e286f46648066384bdf2c68f87..9d6212bd03a2cc30caccdb8f33f30d7b9039676f 100644 --- a/src/BootstrapBlazor/Components/Slider/Slider.razor.cs +++ b/src/BootstrapBlazor/Components/Slider/Slider.razor.cs @@ -9,6 +9,35 @@ namespace BootstrapBlazor.Components; /// public partial class Slider : IDisposable { + /// + /// 获得/设置 组件当前值 + /// + [Parameter] + public int Value { get; set; } + + /// + /// ValueChanged 回调方法 + /// + [Parameter] + public EventCallback ValueChanged { get; set; } + + /// + /// 获得/设置 值变化时回调方法 + /// + [Parameter] + public Func? OnValueChanged { get; set; } + + /// + /// 获得 按钮 disabled 属性 + /// + protected string? Disabled => IsDisabled ? "disabled" : null; + + /// + /// 获得/设置 是否禁用 + /// + [Parameter] + public bool IsDisabled { get; set; } + /// /// 获得/设置 JSInterop 实例 /// @@ -17,7 +46,8 @@ public partial class Slider : IDisposable /// /// 获得 样式集合 /// - private static string? ClassName => CssBuilder.Default("slider") + private string? ClassName => CssBuilder.Default("slider") + .AddClassFromAttributes(AdditionalAttributes) .Build(); /// @@ -67,12 +97,17 @@ public partial class Slider : IDisposable /// /// [JSInvokable] - public void SetValue(int val) + public async Task SetValue(int val) { Value = val; + if (OnValueChanged != null) + { + await OnValueChanged(Value); + } + if (ValueChanged.HasDelegate) { - ValueChanged.InvokeAsync(val); + await ValueChanged.InvokeAsync(val); } } diff --git a/src/BootstrapBlazor/Components/Slider/SliderBase.cs b/src/BootstrapBlazor/Components/Slider/SliderBase.cs deleted file mode 100644 index fffb3dab6f293a622168bc66a3e1fd99b140658b..0000000000000000000000000000000000000000 --- a/src/BootstrapBlazor/Components/Slider/SliderBase.cs +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -// Website: https://www.blazor.zone or https://argozhang.github.io/ - -namespace BootstrapBlazor.Components; - -/// -/// Slider 组件 -/// -public class SliderBase : BootstrapComponentBase -{ - /// - /// 获得/设置 组件当前值 - /// - [Parameter] - public int Value { get; set; } - - /// - /// ValueChanged 回调方法 - /// - [Parameter] - public EventCallback ValueChanged { get; set; } - - /// - /// 获得 按钮 disabled 属性 - /// - protected string? Disabled => IsDisabled ? "disabled" : null; - - /// - /// 获得/设置 是否禁用 - /// - [Parameter] - public bool IsDisabled { get; set; } -}