![]() |
VOOZH | about |
dotnet add package H.ReactiveUI.CommonInteractions.Wpf --version 1.0.56
NuGet\Install-Package H.ReactiveUI.CommonInteractions.Wpf -Version 1.0.56
<PackageReference Include="H.ReactiveUI.CommonInteractions.Wpf" Version="1.0.56" />
<PackageVersion Include="H.ReactiveUI.CommonInteractions.Wpf" Version="1.0.56" />Directory.Packages.props
<PackageReference Include="H.ReactiveUI.CommonInteractions.Wpf" />Project file
paket add H.ReactiveUI.CommonInteractions.Wpf --version 1.0.56
#r "nuget: H.ReactiveUI.CommonInteractions.Wpf, 1.0.56"
#:package H.ReactiveUI.CommonInteractions.Wpf@1.0.56
#addin nuget:?package=H.ReactiveUI.CommonInteractions.Wpf&version=1.0.56Install as a Cake Addin
#tool nuget:?package=H.ReactiveUI.CommonInteractions.Wpf&version=1.0.56Install as a Cake Tool
Common ReactiveUI MVVM Level Interactions(like open/save file) for WPF/UWP/WinUI/Uno/Avalonia platforms.
👁 NuGet
👁 NuGet
👁 NuGet
👁 NuGet
👁 NuGet
👁 NuGet
Install-Package H.ReactiveUI.CommonInteractions.Core
Install-Package H.ReactiveUI.CommonInteractions.Wpf
Install-Package H.ReactiveUI.CommonInteractions.Uno
Install-Package H.ReactiveUI.CommonInteractions.Uwp
Install-Package H.ReactiveUI.CommonInteractions.WinUI
Install-Package H.ReactiveUI.CommonInteractions.Avalonia
Add to your App constructors:
public sealed partial class App
{
private InteractionManager InteractionManager { get; } = new();
public App()
{
InteractionManager.Register();
// Not necessary. Displays unhandled exceptions using MessageInteractions.Exception.
// InteractionManager.CatchUnhandledExceptions();
// your code
}
}
// Open
var file = await FileInteractions.OpenFile.Handle(new OpenFileArguments
{
SuggestedFileName = "my.txt",
Extensions = new[] { ".txt" },
FilterName = "My txt files",
});
if (file == null)
{
return;
}
var text = await file.ReadTextAsync().ConfigureAwait(true);
// Save (you need to save file from previuos step)
await file.WriteTextAsync(text).ConfigureAwait(false);
// Save As
var file = await FileInteractions.SaveFile.Handle(new SaveFileArguments(".txt")
{
SuggestedFileName = "my.txt",
FilterName = "My txt files",
});
if (file == null)
{
return;
}
await file.WriteTextAsync(text).ConfigureAwait(false);
await MessageInteractions.Message.Handle("Message");
await MessageInteractions.Warning.Handle("Warning");
await MessageInteractions.Exception.Handle(new InvalidOperationException("Exception"));
bool question = await MessageInteractions.Question.Handle(new QuestionData("Are you sure?"));
WinUI requires a window to display the ContentDialog, so you'll need to set it explicitly in your App.OnLaunched:
protected override void OnLaunched(LaunchActivatedEventArgs args)
{
#if HAS_WINUI
var window = new Window();
MessageInteractionManager.Window = window;
#endif
}
await WebInteractions.OpenUrl.Handle("https://www.google.com/");
// WPF
xmlns:h="clr-namespace:H.ReactiveUI;assembly=H.ReactiveUI.CommonInteractions.Wpf"
// UWP/Uno
xmlns:h="using:H.ReactiveUI"
<Element
AllowDrop="True"
h:DragAndDropExtensions.DragFilesEnterCommand="{Binding DragFilesEnter}"
h:DragAndDropExtensions.DragTextEnterCommand="{Binding DragTextEnter}"
h:DragAndDropExtensions.DragLeaveCommand="{Binding DragLeave}"
h:DragAndDropExtensions.DropFilesCommand="{Binding DropFiles}"
h:DragAndDropExtensions.DropTextCommand="{Binding DropText}"
>
Command arguments:
DragFilesEnterCommand - FileData[] - Array of files.
DragTextEnterCommand - string - Text.
DragLeaveCommand - null.
DropFilesCommand - FileData[] - Array of files.
DropTextCommand - string - Text.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0-windows7.0 net5.0-windows7.0 is compatible. net6.0-windows net6.0-windows was computed. net6.0-windows7.0 net6.0-windows7.0 is compatible. net7.0-windows net7.0-windows was computed. net8.0-windows net8.0-windows was computed. net9.0-windows net9.0-windows was computed. net10.0-windows net10.0-windows was computed. |
| .NET Framework | net461 net461 is compatible. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
⭐ Last 10 features:
- feat: Updated NuGet packages. 2022-08-11
- feat: Updated NuGet packages. 2022-07-11
- feat: Published WebAssembly app. 2022-07-01
- feat: Updated NuGet packages. 2022-07-01
- feat: To DependencyPropertyGenerator. 2022-06-29
- feat: Updated NuGet packages. 2022-06-29
- feat: Added BaseConverter DefaultConvertValue/DefaultConvertBackValue. 2022-06-24
- feat: Updated NuGet packages. 2022-03-25
- feat: Updated NuGet packages. 2022-03-17
- feat: Changed WinUI implementatation to use ContentDialog instead MessageDialog. 2022-03-17
🐞 Last 10 bug fixes:
- fix: To WinRT.Interop. 2022-07-14
- fix: Disabled linker. 2022-07-01
- fix: Fixed Uno targets. 2022-03-18
- fix: Fixed missing Warning ContentDialog. 2022-03-17
- fix(apps): Fixed Uno.WinUI webassembly app. 2022-01-19
- fix: Fixed package description. 2021-12-22
- fix(Avalonia): Changed BaseConverter null values to UnsetValue. 2021-12-15
- fix(Avalonia): Fixed OpenFileDialog Filters bug. 2021-12-11
- fix: Fixed CI to release avalonia. 2021-12-10
- fix(apps.Avalonia): Fixed FileInteractions. 2021-12-09