EllipticBit.Services.Dialog.WPF
1.1.7
dotnet add package EllipticBit.Services.Dialog.WPF --version 1.1.7
NuGet\Install-Package EllipticBit.Services.Dialog.WPF -Version 1.1.7
<PackageReference Include="EllipticBit.Services.Dialog.WPF" Version="1.1.7" />
<PackageVersion Include="EllipticBit.Services.Dialog.WPF" Version="1.1.7" />
<PackageReference Include="EllipticBit.Services.Dialog.WPF" />
paket add EllipticBit.Services.Dialog.WPF --version 1.1.7
#r "nuget: EllipticBit.Services.Dialog.WPF, 1.1.7"
#:package EllipticBit.Services.Dialog.WPF@1.1.7
#addin nuget:?package=EllipticBit.Services.Dialog.WPF&version=1.1.7
#tool nuget:?package=EllipticBit.Services.Dialog.WPF&version=1.1.7
EllipticBit Services - WPF Dialogs
EllipticBit.Services.Dialog.WPF provides a dependency-injection friendly dialog
service for WPF desktop applications. It includes a reusable message dialog and a
ready-to-use login dialog, allowing view models to show dialogs without taking a
direct dependency on WPF windowing types.
This package is part of the EllipticBit Services collection of cross-platform service libraries for .NET.
Features
DialogServicefor showing message and login dialogs from view models.- Configurable message dialogs through
MessageDialogSettings. - Built-in login dialog returning a strongly-typed
LoginDialogResult.
Installation
Install the package from NuGet:
dotnet add package EllipticBit.Services.Dialog.WPF
Or add a PackageReference to your project file:
<PackageReference Include="EllipticBit.Services.Dialog.WPF" Version="x.y.z" />
Usage
Register the dialog service with the dependency injection container:
using EllipticBit.Services.Dialog.WPF;
using Microsoft.Extensions.DependencyInjection;
services.RegisterDialogService();
Then inject DialogService into your view models:
using EllipticBit.Services.Dialog.WPF;
public class ShellViewModel
{
private readonly DialogService _dialogs;
public ShellViewModel(DialogService dialogs)
{
_dialogs = dialogs;
}
public void ConfirmDelete()
{
_dialogs.Show(new MessageDialogSettings
{
Title = "Delete item",
Message = "Are you sure you want to delete this item?"
});
}
}
Contributing
Contributions are welcome! To contribute:
- Fork the repository and create a feature branch.
- Make your changes, following the existing code style and conventions.
- Add or update tests where appropriate.
- Open a merge/pull request with a clear description of the change.
AI / LLM-assisted contributions
If any part of your contribution was generated with the assistance of a Large
Language Model (LLM) or other AI tool, you must include the prompt(s) used to
generate it in the PROMPTS.txt file as part of the same
pull request.
License
This project is licensed under the Boost Software License 1.0 (BSL-1.0).
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows7.0 is compatible. net9.0-windows was computed. net10.0-windows was computed. |
| .NET Framework | net47 is compatible. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 4.7
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- System.Collections.Immutable (>= 10.0.9)
-
net8.0-windows7.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- System.Collections.Immutable (>= 10.0.9)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.