GuiDispatcher.Sharp.Avalonia
1.1.1
dotnet add package GuiDispatcher.Sharp.Avalonia --version 1.1.1
NuGet\Install-Package GuiDispatcher.Sharp.Avalonia -Version 1.1.1
<PackageReference Include="GuiDispatcher.Sharp.Avalonia" Version="1.1.1" />
<PackageVersion Include="GuiDispatcher.Sharp.Avalonia" Version="1.1.1" />
<PackageReference Include="GuiDispatcher.Sharp.Avalonia" />
paket add GuiDispatcher.Sharp.Avalonia --version 1.1.1
#r "nuget: GuiDispatcher.Sharp.Avalonia, 1.1.1"
#:package GuiDispatcher.Sharp.Avalonia@1.1.1
#addin nuget:?package=GuiDispatcher.Sharp.Avalonia&version=1.1.1
#tool nuget:?package=GuiDispatcher.Sharp.Avalonia&version=1.1.1
GuiDispatcher.Sharp.Avalonia
Avalonia 12 implementation of GuiDispatcher.Sharp for .NET 10.
Install
<PackageReference Include="GuiDispatcher.Sharp.Avalonia" Version="1.1.*" />
This package pulls in GuiDispatcher.Sharp (1.1.1 or later, below 2.0.0)
and Avalonia (12.1.0).
Or via CLI:
dotnet add package GuiDispatcher.Sharp.Avalonia
Versioning follows Semantic Versioning. Releases are cut by pushing a vX.Y.Z git tag; see CHANGELOG.md for release history.
Requirements
- .NET 10 (
net10.0) - Avalonia 12.1+
NuGet publishing
Publishing uses NuGet Trusted Publishing from GitHub Actions, not a stored API key.
Configure a trusted publishing policy on nuget.org:
| Field | Value |
|---|---|
| Repository owner | buchmiet |
| Repository | GuiDispatcher.Sharp.Avalonia |
| Workflow file | publish-nuget.yml |
| Environment | production |
Releasing
The Publish NuGet workflow only runs on vX.Y.Z tag pushes, and will fail unless the .csproj version and CHANGELOG.md are both updated first. To cut a release:
- Bump
<Version>inGuiDispatcher.Sharp.Avalonia.csproj. - Move the relevant
[Unreleased]entries inCHANGELOG.mdinto a new## [X.Y.Z] - YYYY-MM-DDsection. - Commit both changes.
- Tag and push:
git tag vX.Y.Z && git push origin vX.Y.Z— this triggers the publish workflow.
For a coordinated release of the complete package family, follow the family release guide.
Usage
using GuiDispatcher.Sharp;
using GuiDispatcher.Sharp.Avalonia;
using GuiDispatcher.Sharp.Contracts;
services.AddSingleton<IGuiDispatcher, AvaloniaGuiDispatcher>();
The dispatcher is backed by Avalonia.Threading.Dispatcher.UIThread.
await dispatcher.InvokeAsync(() =>
{
viewModel.Apply(result);
});
using var timer = dispatcher.CreateTimer(TimeSpan.FromSeconds(1));
timer.Tick += (_, _) => viewModel.Refresh();
timer.Start();
For tests or headless hosts, use ImmediateGuiDispatcher from the core GuiDispatcher.Sharp package.
| 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
- Avalonia (>= 12.1.0)
- GuiDispatcher.Sharp (>= 1.1.1 && < 2.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.