VOOZH about

URL: https://www.nuget.org/packages/Darp.Utils.Dialog.FluentAvalonia

⇱ NuGet Gallery | Darp.Utils.Dialog.FluentAvalonia 1.20.0




Darp.Utils.Dialog.FluentAvalonia 1.20.0

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Darp.Utils.Dialog.FluentAvalonia --version 1.20.0
 
 
NuGet\Install-Package Darp.Utils.Dialog.FluentAvalonia -Version 1.20.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="Darp.Utils.Dialog.FluentAvalonia" Version="1.20.0" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Darp.Utils.Dialog.FluentAvalonia" Version="1.20.0" />
 
Directory.Packages.props
<PackageReference Include="Darp.Utils.Dialog.FluentAvalonia" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Darp.Utils.Dialog.FluentAvalonia --version 1.20.0
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Darp.Utils.Dialog.FluentAvalonia, 1.20.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.
#:package Darp.Utils.Dialog.FluentAvalonia@1.20.0
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Darp.Utils.Dialog.FluentAvalonia&version=1.20.0
 
Install as a Cake Addin
#tool nuget:?package=Darp.Utils.Dialog.FluentAvalonia&version=1.20.0
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Darp.Utils

👁 Test (and publish)
👁 License

This repository bundles all open source c# helper modules of 'rosslight GmbH'. To extend, add a new project and test project.

Darp.Utils.Assets

👁 NuGet
👁 Downloads

A collection of simple interfaces for app assets targeting desktop apps.

Currently implemented:

  • FolderAssetsService: Read or write to a specific folder DI extensions provide helpers for ApplicationData, ProgramData, and the App's BaseDirectory
  • EmbeddedResourceAssetsService: Read files marked as EmbeddedResource of a specific Assembly
  • MemoryAssetsService: InMemory service that can be used for testing

When using DI, it is possible to retrieve the following services:

  • IAssetsFactory: A factory which is able to retrieve named asset services
  • IReadOnlyAssets: The base interface which provides readonly access to your assets
  • IAssetsService: A writable view on your assets, extends IReadOnlyAssets
  • IFolderAssetsService: A writable view on your assets with helpers specific to a directory

Named asset services:

  • Supports registration of multiple different asset services
  • Retrieval via IAssetFactory by supplying the name

Example:

// Add EmbeddedResources and AppData assets to the DI Container
ServiceProvider provider = new ServiceCollection()
 .AddAppDataAssetsService(relativePath: "RelativePath")
 .AddEmbeddedResourceAssetsService(name: "AssemblyResources", typeof(Test).Assembly)
 .BuildServiceProvider();

// Example read and write operations with the app data
IAssetsService service = provider.GetRequiredService<IAssetsService>();
await service.SerializeJsonAsync("test.json", new Test("value"));
Test deserialized = await service.DeserializeJsonAsync<Test>("test.json");
await service.WriteTextAsync("test2.txt", "some content");

// Retrieve a named assets service and copy an embedded resource to the app data
IAssetsFactory factory = provider.GetRequiredService<IAssetsFactory>();
IReadOnlyAssetsService resourceService = factory.GetReadOnlyAssets("AssemblyResources");
await resourceService.CopyToAsync("test.json", service, "test.json");

file sealed record Test(string Prop1);

Darp.Utils.Configuration

👁 NuGet
👁 Downloads

A writable configuration service. Can be registered using DI and injected into target services. Usage might include reading, writing and listening to changes via the INotifyPropertyChanged interface.

Example:

ServiceProvider provider = new ServiceCollection()
 .AddAppDataAssetsService("RelativePath")
 .AddConfigurationFile<TestConfig>("config.json")
 .BuildServiceProvider();

IConfigurationService<TestConfig> service = provider.GetRequiredService<IConfigurationService<TestConfig>>();
TestConfig config = await service.LoadConfigurationAsync();
await service.WriteConfigurationAsync(config with { Setting = "NewValue" });

Darp.Utils.CodeMirror

👁 NuGet
👁 Downloads

A code editor control that supports C# based on a WebView with CodeMirror.

First, create the backend service. It will host a minimal webserver which provides the backend. Afterwards, you can create the editor in the code behind or in xaml:

ICodeMirrorService codeMirrorService = new CodeMirrorService();
await vm.CodeMirror.StartBackendAsync(
 onBuild: builder => builder.Services.AddLogging(loggingBuilder => loggingBuilder.AddConsole()),
 onConfigureCSharp: options => options.SetScriptMode(true)
);

var editor = new CodeMirrorEditor();
editor.Address = codeMirrorService.Address;
editor.EditorText = "int i = 42";
editor.IsEditorReadOnly = false;

Darp.Utils.Dialog

👁 NuGet
👁 Downloads

A lightweight dialog service which allows for opening dialogs from the ViewModel.

Implementation Description
👁 NuGet
Implementation based on FluentAvalonia

Example:

ServiceProvider provider = new ServiceCollection()
 .AddSingleton<IDialogService, AvaloniaDialogService>()
 .BuildServiceProvider();

IDialogService dialogService = provider.GetRequiredService<IDialogService>();
// Specify the Type of the dataContext of the window the dialog is supposed to be shown on
// .WithDialogRoot<MainWindowViewModel>()
await dialogService.CreateMessageBoxDialog("Title", "Message").ShowAsync();

// Assumes you have registered a view for 'SomeViewModel' in a ViewLocator
// Works with any kind of content
var viewModel = new SomeViewModel();
await dialogService.CreateContentDialog("Title", viewModel)
 .SetDefaultButton(ContentDialogButton.Primary)
 .SetCloseButton("Close")
 .SetPrimaryButton("Ok", onClick: model => model.IsModelValid)
 .ShowAsync();

Darp.Utils.Avalonia

👁 NuGet
👁 Downloads

A collection of classes and methods to help reduce the boilerplate when working with Avalonia. These contain:

  • ViewLocatorBase: Resolve views at compile-time
  • UserControlBase, WindowBase: Add a ViewModel property to have typed access to the DataContext
  • AvaloniaHelpers: A collection of helper methods

Darp.Utils.ResxSourceGenerator

👁 NuGet
👁 Downloads

A source generator for generating strongly typed singleton resource classes from .resx files. Additional documentation here.

Darp.Utils.TestRail

👁 NuGet
👁 Downloads

A library allowing for communication with a TestRail instance in a easy and modern way.

Core features:

  • Modern: Build on the latest .Net technologies. NativeAot compatible
  • Extensible: ITestRailService is the core with a bunch of extension methods defining the actual API
  • Testable: Operates purely on the interface ITestRailService which can be mocked easily

Getting started:

var service = TestRailService.Create("https://[your-organization].testrail.io", "username", "passwordOrApiKey");
var projectsEnumerable = service.GetProjects(ProjectsFilter.ActiveProjectsOnly);
await foreach (var project in projectsEnumerable)
{
 var casesEnumerable = service.GetCases(project.Id);
}
var caseResponse = await service.GetCaseAsync((CaseId)1);
var customProperty = caseResponse.Properties["custom_property"].GetString();
await service.UpdateCase(new UpdateCaseRequest { CaseId = caseResponse.Id, Title = "New Title" });

Extension methods:

public static async Task<GetCaseResponse> GetCaseAsync(this ITestRailService testRailService, CaseId caseId)
{
 var jsonTypeInfo = YourSourceGenerationContext.Default.GetCaseResponse;
 return await testRailService.GetAsync($"/get_case/{(int)caseId}", jsonTypeInfo, default(cancellationToken));
}

Usage with IHttpClientFactory for http client caching:

var provider = new ServiceCollection()
 .AddHttpClient("TestRailClient", (provider, client) =>
 {
 client.BaseAddress = new Uri("https://[your-organization].testrail.io");
 var authBytes = Encoding.UTF8.GetBytes("username:passwordOrApiKey");
 var base64Authorization = Convert.ToBase64String(authBytes);
 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", base64Authorization);
 client.DefaultRequestHeaders.Add("Accept", "application/json");
 })
 .AddSingleton<ITestRailService>(provider => new TestRailService<IHttpClientFactory>(
 provider.GetRequiredService<IHttpClientFactory>(),
 factory => factory.CreateClient("TestRailClient"),
 NullLogger.Instance))
 .BuildServiceProvider();
var service = provider.GetRequiredService<ITestRailService>();
Product Versions Compatible and additional computed target framework versions.
.NET net9.0 net9.0 is compatible.  net9.0-android net9.0-android was computed.  net9.0-browser net9.0-browser was computed.  net9.0-ios net9.0-ios was computed.  net9.0-maccatalyst net9.0-maccatalyst was computed.  net9.0-macos net9.0-macos was computed.  net9.0-tvos net9.0-tvos was computed.  net9.0-windows net9.0-windows was computed.  net10.0 net10.0 is compatible.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.0-preview.1 145 5/5/2026
2.0.0-preview 96 4/29/2026
1.20.0 141 4/16/2026
1.19.2 878 10/24/2025
1.19.1 385 7/28/2025
1.19.0 193 7/27/2025
1.18.2 224 7/10/2025
1.18.1 266 7/7/2025
1.18.0 223 6/29/2025
1.17.4 175 6/28/2025
1.17.3 382 6/13/2025
1.17.2 357 6/12/2025
1.17.1 365 6/12/2025
1.17.0 272 6/8/2025
1.16.1 195 6/3/2025
1.16.0 173 5/24/2025
1.15.0 151 5/24/2025
1.14.3 296 5/22/2025
1.14.2 262 5/22/2025
1.14.1 267 5/20/2025
Loading failed