Soenneker.Blazor.Extensions.EventCallback
4.0.461
Prefix Reserved
dotnet add package Soenneker.Blazor.Extensions.EventCallback --version 4.0.461
NuGet\Install-Package Soenneker.Blazor.Extensions.EventCallback -Version 4.0.461
<PackageReference Include="Soenneker.Blazor.Extensions.EventCallback" Version="4.0.461" />
<PackageVersion Include="Soenneker.Blazor.Extensions.EventCallback" Version="4.0.461" />
<PackageReference Include="Soenneker.Blazor.Extensions.EventCallback" />
paket add Soenneker.Blazor.Extensions.EventCallback --version 4.0.461
#r "nuget: Soenneker.Blazor.Extensions.EventCallback, 4.0.461"
#:package Soenneker.Blazor.Extensions.EventCallback@4.0.461
#addin nuget:?package=Soenneker.Blazor.Extensions.EventCallback&version=4.0.461
#tool nuget:?package=Soenneker.Blazor.Extensions.EventCallback&version=4.0.461
Soenneker.Blazor.Extensions.EventCallback
Small Blazor extensions that invoke an EventCallback only when its consumer assigned a delegate.
Installation
dotnet add package Soenneker.Blazor.Extensions.EventCallback
Usage
The extension removes repeated HasDelegate checks from reusable components:
@using Soenneker.Blazor.Extensions.EventCallback
<button @onclick="Save">Save</button>
@code {
[Parameter]
public EventCallback<Order> OnSaved { get; set; }
private async Task Save()
{
Order order = await SaveOrder();
await OnSaved.InvokeIfHasDelegate(order);
}
}
The non-generic overload works the same way:
[Parameter]
public EventCallback OnClosed { get; set; }
await OnClosed.InvokeIfHasDelegate();
When no delegate is assigned, both overloads return Task.CompletedTask. When a delegate is assigned, invocation follows normal Blazor EventCallback.InvokeAsync behavior, including renderer dispatch and exception propagation. Await the returned task when subsequent work depends on the callback completing.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.AspNetCore.Components (>= 10.0.12)
NuGet packages (12)
Showing the top 5 NuGet packages that depend on Soenneker.Blazor.Extensions.EventCallback:
| Package | Downloads |
|---|---|
|
Soenneker.Blazor.TomSelect
A Blazor interop library for the select user control library, Tom Select |
|
|
Soenneker.Blazor.Turnstile
Renders a Cloudflare Turnstile widget in Blazor and exposes its token and lifecycle events. |
|
|
Soenneker.Blazor.DataTables
A Blazor interop library for DataTables |
|
|
Soenneker.Blazor.Stripe.Elements
A modular, strongly-typed Blazor library for Stripe Elements |
|
|
Soenneker.Blazor.Chatwoot
A Blazor interop library for Chatwoot, the open-source customer engagement suite. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.461 | 2,153 | 9/15/2026 |
| 4.0.460 | 5,430 | 9/12/2026 |
| 4.0.459 | 3,204 | 9/8/2026 |
| 4.0.458 | 12,581 | 8/29/2026 |
| 4.0.457 | 252 | 8/29/2026 |
| 4.0.456 | 9,336 | 8/11/2026 |
| 4.0.455 | 10,239 | 7/27/2026 |
| 4.0.454 | 11,110 | 7/16/2026 |
| 4.0.453 | 2,973 | 7/14/2026 |
| 4.0.452 | 12,039 | 6/18/2026 |
| 4.0.451 | 7,370 | 6/9/2026 |
| 4.0.450 | 5,101 | 6/5/2026 |
| 4.0.449 | 8,426 | 5/12/2026 |
| 4.0.448 | 11,184 | 4/22/2026 |
| 4.0.447 | 772 | 4/21/2026 |
| 4.0.446 | 5,830 | 4/14/2026 |
| 4.0.445 | 16,208 | 3/22/2026 |
| 4.0.444 | 4,274 | 3/12/2026 |
| 4.0.443 | 272 | 3/12/2026 |
| 4.0.442 | 210 | 3/12/2026 |
Update dependency dotnet-sdk to v10.0.401 (#1039)