VDT.Core.Blazor.GlobalEventHandler
3.2.0
dotnet add package VDT.Core.Blazor.GlobalEventHandler --version 3.2.0
NuGet\Install-Package VDT.Core.Blazor.GlobalEventHandler -Version 3.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VDT.Core.Blazor.GlobalEventHandler" Version="3.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add VDT.Core.Blazor.GlobalEventHandler --version 3.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: VDT.Core.Blazor.GlobalEventHandler, 3.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install VDT.Core.Blazor.GlobalEventHandler as a Cake Addin #addin nuget:?package=VDT.Core.Blazor.GlobalEventHandler&version=3.2.0 // Install VDT.Core.Blazor.GlobalEventHandler as a Cake Tool #tool nuget:?package=VDT.Core.Blazor.GlobalEventHandler&version=3.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
VDT.Core.Blazor.GlobalEventHandler
Blazor component that allows you to handle global window level events in your application.
Features
- Window-level events that don't require focus on any element:
- Keyboard events
- Mouse events
- Touch events
- General events
Usage
To register event handlers, simply include the GlobalEventHandler component on your page and register your event handler with the event in the component that you want to handle. The available events are:
OnKeyDown
which provides an optionalKeyboardEventArgs
parameterOnKeyUp
which provides an optionalKeyboardEventArgs
parameterOnClick
which provides an optionalMouseEventArgs
parameterOnContextMenu
which provides an optionalMouseEventArgs
parameterOnDoubleClick
which provides an optionalMouseEventArgs
parameterOnMouseDown
which provides an optionalMouseEventArgs
parameterOnMouseUp
which provides an optionalMouseEventArgs
parameterOnMouseMove
which provides an optionalMouseEventArgs
parameterOnTouchStart
which provides an optionalTouchEventargs
parameterOnTouchEnd
which provides an optionalTouchEventargs
parameterOnTouchCancel
which provides an optionalTouchEventargs
parameterOnTouchMove
which provides an optionalTouchEventargs
parameterOnResize
which provides an optionalResizeEventArgs
parameterOnScroll
which provides an optionalScrollEventArgs
parameterOnOffline
which provides an optionalWindowEventArgs
parameterOnOnline
which provides an optionalWindowEventArgs
parameter
Example
<GlobalEventHandler OnKeyDown="@OnWindowKeyDown" OnResize="@OnWindowResize" OnClick="@OnWindowClick" />
@if (keyDownEventArgs != null) {
<h2>Last key down event</h2>
<ul>
<li>Alt key: @keyDownEventArgs.AltKey</li>
<li>Code: @keyDownEventArgs.Code</li>
<li>Ctrl key: @keyDownEventArgs.CtrlKey</li>
<li>Key: @keyDownEventArgs.Key</li>
<li>Location: @keyDownEventArgs.Location</li>
<li>Meta key: @keyDownEventArgs.MetaKey</li>
<li>Repeat: @keyDownEventArgs.Repeat</li>
<li>Shift key: @keyDownEventArgs.ShiftKey</li>
<li>Type: @keyDownEventArgs.Type</li>
</ul>
}
@if (resizeEventArgs != null) {
<h2>Last resize event</h2>
<ul>
<li>Width: @resizeEventArgs.Width</li>
<li>Height: @resizeEventArgs.Height</li>
</ul>
}
@if (clicked) {
<h2>Clicked</h2>
}
@code {
private KeyboardEventArgs? keyDownEventArgs;
private ResizeEventArgs? resizeEventArgs;
private bool clicked = false;
// Handlers can be asynchronous ...
public async Task OnWindowKeyDown(KeyboardEventArgs args) {
keyDownEventArgs = args;
await Task.CompletedTask;
}
// ... Or synchronous
public void OnWindowResize(ResizeEventArgs args) {
resizeEventArgs = args;
}
// EventArgs are optional
public void OnWindowClick() {
clicked = true;
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- Microsoft.AspNetCore.Components.Web (>= 6.0.0)
-
net7.0
- Microsoft.AspNetCore.Components.Web (>= 7.0.0)
-
net8.0
- Microsoft.AspNetCore.Components.Web (>= 8.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on VDT.Core.Blazor.GlobalEventHandler:
Package | Downloads |
---|---|
VDT.Core.Blazor.DragAndDropList
Blazor component that allows users to reorder items in a list by dragging and dropping |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.2.0 | 580 | 6/14/2024 |
3.1.0 | 115 | 6/1/2024 |
3.0.0 | 166 | 3/19/2024 |
2.2.0 | 254 | 8/17/2023 |
2.1.1 | 356 | 2/27/2023 |
2.1.0 | 247 | 2/23/2023 |
2.0.0 | 245 | 2/13/2023 |
1.2.0 | 268 | 2/12/2023 |
1.1.4 | 263 | 2/11/2023 |
1.1.3 | 262 | 2/3/2023 |
1.1.2 | 361 | 1/15/2022 |
1.1.1 | 271 | 1/15/2022 |
1.1.0 | 1,233 | 11/20/2021 |
1.0.0 | 305 | 11/9/2021 |
- Fixed mouse event pageX/Y and movementX/Y properties