H.ReactiveUI.CommonInteractions.Uno
1.0.56
dotnet add package H.ReactiveUI.CommonInteractions.Uno --version 1.0.56
NuGet\Install-Package H.ReactiveUI.CommonInteractions.Uno -Version 1.0.56
<PackageReference Include="H.ReactiveUI.CommonInteractions.Uno" Version="1.0.56" />
paket add H.ReactiveUI.CommonInteractions.Uno --version 1.0.56
#r "nuget: H.ReactiveUI.CommonInteractions.Uno, 1.0.56"
// Install H.ReactiveUI.CommonInteractions.Uno as a Cake Addin #addin nuget:?package=H.ReactiveUI.CommonInteractions.Uno&version=1.0.56 // Install H.ReactiveUI.CommonInteractions.Uno as a Cake Tool #tool nuget:?package=H.ReactiveUI.CommonInteractions.Uno&version=1.0.56
H.ReactiveUI.CommonInteractions
Common ReactiveUI MVVM Level Interactions(like open/save file) for WPF/UWP/WinUI/Uno/Avalonia platforms.
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
Usage
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
}
}
FileInteractions
// 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);
MessageInteractions
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
}
WebInteractions
await WebInteractions.OpenUrl.Handle("https://www.google.com/");
DragAndDropExtensions
// 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.
Contacts
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 was computed. 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 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. monoandroid11.0 is compatible. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. xamarinios10 is compatible. |
Xamarin.Mac | xamarinmac was computed. xamarinmac20 is compatible. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- H.ReactiveUI.CommonInteractions.Core (>= 1.0.56)
- Uno.UI (>= 4.4.13)
-
MonoAndroid 11.0
- H.ReactiveUI.CommonInteractions.Core (>= 1.0.56)
- Uno.UI (>= 4.4.13)
-
Xamarin.iOS 1.0
- H.ReactiveUI.CommonInteractions.Core (>= 1.0.56)
- Uno.UI (>= 4.4.13)
-
Xamarin.Mac 2.0
- H.ReactiveUI.CommonInteractions.Core (>= 1.0.56)
- Uno.UI (>= 4.4.13)
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 | |
---|---|---|---|
1.0.56 | 547 | 8/11/2022 | |
1.0.55 | 552 | 7/14/2022 | |
1.0.54 | 552 | 7/11/2022 | |
1.0.53 | 545 | 6/30/2022 | |
1.0.52 | 538 | 6/30/2022 | |
1.0.51 | 531 | 6/29/2022 | |
1.0.50 | 535 | 6/24/2022 | |
1.0.49 | 623 | 3/25/2022 | |
1.0.48 | 619 | 3/18/2022 | |
1.0.45 | 831 | 1/18/2022 | |
1.0.44 | 561 | 1/11/2022 | |
1.0.43 | 572 | 1/11/2022 | |
1.0.42 | 587 | 1/4/2022 | |
1.0.41 | 562 | 12/22/2021 | |
1.0.40 | 565 | 12/22/2021 | |
1.0.39 | 576 | 12/22/2021 | |
1.0.38 | 598 | 12/14/2021 | |
1.0.37 | 698 | 12/14/2021 | |
1.0.36 | 810 | 12/11/2021 | |
1.0.35 | 592 | 12/10/2021 | |
1.0.34 | 592 | 12/9/2021 | |
1.0.33 | 610 | 12/5/2021 | |
1.0.32 | 603 | 12/5/2021 | |
1.0.31 | 604 | 12/5/2021 | |
1.0.30 | 708 | 11/18/2021 | |
1.0.29 | 633 | 11/18/2021 | |
1.0.27 | 848 | 11/5/2021 | |
1.0.26 | 685 | 11/5/2021 | |
0.9.22 | 763 | 10/30/2021 | |
0.9.21 | 723 | 10/29/2021 | |
0.9.20 | 666 | 10/27/2021 | |
0.9.19 | 640 | 10/26/2021 | |
0.9.18 | 664 | 10/26/2021 | |
0.9.17 | 667 | 10/26/2021 | |
0.9.16 | 664 | 10/26/2021 | |
0.9.15 | 748 | 10/26/2021 | |
0.9.14 | 687 | 10/26/2021 | |
0.9.13 | 688 | 10/26/2021 | |
0.9.12 | 657 | 10/26/2021 | |
0.9.11 | 674 | 10/26/2021 | |
0.9.10 | 655 | 10/26/2021 | |
0.9.9 | 610 | 10/26/2021 | |
0.9.8 | 678 | 10/25/2021 | |
0.9.7 | 667 | 10/25/2021 | |
0.9.6 | 692 | 10/25/2021 | |
0.9.5 | 761 | 10/25/2021 | |
0.9.2 | 796 | 10/25/2021 |
⭐ 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