HKW.Utils
1.3.8
dotnet add package HKW.Utils --version 1.3.8
NuGet\Install-Package HKW.Utils -Version 1.3.8
<PackageReference Include="HKW.Utils" Version="1.3.8" />
paket add HKW.Utils --version 1.3.8
#r "nuget: HKW.Utils, 1.3.8"
// Install HKW.Utils as a Cake Addin #addin nuget:?package=HKW.Utils&version=1.3.8 // Install HKW.Utils as a Cake Tool #tool nuget:?package=HKW.Utils&version=1.3.8
HKW.Utils
Utils created by HKW
Observable
Provide a variety of observable tools
The base class for all Observable types is ReactiveObject.
ObservableCollectionWrapper
You can wrap various types of collections into the ObservableCollection type.
ObservableList
The wrapper can support any list that implements the IList<T>
interface.
You can use IListWrapper.BaseList
to access the original list.
ObservableListWrapper
in addition to providing the INotifyCollectionChanged
and INotifyPropertyChanged
interfaces, it also supports INotifyListChanging
and INotifyListChanged
.
var observableList = new ObservableListWrapper<int, List<int>>(new List<int>());
ObservableSet
The wrapper can support any set that implements the ISet<T>
interface.
The recommended set type for ObservableSetWrapper
is OrderedSet
, as it ensures the order of items during set operations. Using the native HashSet
may lead to incorrect item order.
You can use ISetWrapper.BaseSet
to access the original set.
ObservableSetWrapper
to providing the INotifyCollectionChanged
and INotifyPropertyChanged
interfaces, it also supports INotifySetChanging
and INotifySetChanged
.
var observableSet = new ObservableSetWrapper<int, HashSet<int>>(new HashSet<int>());
ObservableDictionary
The wrapper can support any dictionary that implements the IDictionary<TKey, TValue>
interface.
You can use IDictionaryWrapper.BaseDictionary
to access the original dictionary.
ObservableDictionaryWrapper
in addition to providing the INotifyCollectionChanged
and INotifyPropertyChanged
interfaces, it also supports INotifyDictionaryChanging
and INotifyDictionaryChanged
.
var observableDictionary = new ObservableDictionaryWrapper<int, string, Dictionary<int, string>>(new Dictionary<int, string>());
Drawing
Some Drawing
types that support INotifyPropertyChanged
are primarily intended for display purposes, as they may not offer sufficient performance for more intensive applications. These types are useful for scenarios where you need to notify the UI of property changes but do not require high performance, such as in data-binding contexts or simple visualizations.
var point = new ObservablePoint<int>();
var range = new ObservableRange<int>();
var rect = new ObservableRectangle<int>();
var size = new ObservableSize<int>();
OtherUtils
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- HKW.ReactiveUI (>= 0.3.5)
- ReactiveUI (>= 20.1.63)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on HKW.Utils:
Package | Downloads |
---|---|
HKW.WPF
A dedicated WPF library providing Collections, TypeExtension, MVVMDialogs, and other features. |
|
HKW.ViewModels
Package Description |
|
HKW.TOML
HKW.TOML is TOML reader, writer, deserializer, serializer and generate classes for C#. |
|
HKW.CommonValueConverters
A common value or multi value converter base. |
|
HKW.MVVMDialogs
MVVMDialogs |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.3.8 | 94 | 12/15/2024 |
1.3.7 | 69 | 12/15/2024 |
1.3.6 | 84 | 12/13/2024 |
1.3.5 | 110 | 12/7/2024 |
1.3.4 | 92 | 12/6/2024 |
1.3.3 | 105 | 12/6/2024 |
1.3.2 | 96 | 12/3/2024 |
1.3.1 | 114 | 12/2/2024 |
1.3.0 | 82 | 12/2/2024 |
1.2.22 | 156 | 4/26/2024 |
1.2.21 | 175 | 4/17/2024 |
1.2.20 | 112 | 4/15/2024 |
1.2.19 | 112 | 4/15/2024 |
1.2.18 | 120 | 4/15/2024 |
1.2.17 | 125 | 4/15/2024 |
1.2.16 | 115 | 4/15/2024 |
1.2.15 | 145 | 4/14/2024 |
1.2.14 | 119 | 4/14/2024 |
1.2.13 | 109 | 4/12/2024 |
1.2.12 | 114 | 4/12/2024 |
1.2.11 | 117 | 4/12/2024 |
1.2.10 | 139 | 4/10/2024 |
1.2.9 | 106 | 4/10/2024 |
1.2.8 | 102 | 4/10/2024 |
1.2.7 | 126 | 4/9/2024 |
1.2.6 | 111 | 4/1/2024 |
1.2.5 | 72 | 3/29/2024 |
1.2.4 | 105 | 3/28/2024 |
1.2.3 | 117 | 3/27/2024 |
1.2.2 | 122 | 3/24/2024 |
1.2.1 | 149 | 3/9/2024 |
1.2.0 | 113 | 3/8/2024 |
1.1.2 | 107 | 3/6/2024 |
1.1.1 | 109 | 3/5/2024 |
1.1.0 | 121 | 3/5/2024 |
1.0.0 | 119 | 1/31/2024 |
0.4.7 | 155 | 1/19/2024 |
0.4.6 | 149 | 12/31/2023 |
0.4.5 | 310 | 12/8/2023 |
0.4.4 | 120 | 12/8/2023 |
0.4.3 | 124 | 12/7/2023 |
0.4.2 | 132 | 12/7/2023 |
0.4.1 | 132 | 12/6/2023 |
0.4.0 | 123 | 12/5/2023 |
0.3.2 | 143 | 12/1/2023 |
0.3.1 | 132 | 12/1/2023 |
0.3.0 | 165 | 12/1/2023 |
0.2.3 | 234 | 11/24/2023 |
0.2.2 | 204 | 11/10/2023 |
0.2.1 | 153 | 10/23/2023 |
0.2.0 | 155 | 10/22/2023 |
0.1.7 | 191 | 9/19/2023 |
0.1.6 | 165 | 9/2/2023 |
0.1.5 | 180 | 8/28/2023 |
0.1.4 | 249 | 6/14/2023 |
0.1.3 | 152 | 5/19/2023 |
0.1.2 | 165 | 5/18/2023 |
0.1.1 | 155 | 5/17/2023 |
0.1.0 | 151 | 5/13/2023 |