<PackageReference Include="System.Drawing.Common" Version="9.0.10" />

HCURSOR

using System; using System.CodeDom.Compiler; using System.Diagnostics; using System.Runtime.CompilerServices; using Windows.Win32.Foundation; namespace Windows.Win32.UI.WindowsAndMessaging { [DebuggerDisplay("{Value}")] [GeneratedCode("Microsoft.Windows.CsWin32", "0.3.106+a37a0b4b70")] internal readonly struct HCURSOR : IHandle<HCURSOR>, IEquatable<HCURSOR> { internal readonly IntPtr Value; HCURSOR IHandle<HCURSOR>.Handle { get { return this; } } [Nullable(2)] object IHandle<HCURSOR>.Wrapper { [NullableContext(2)] get { return null; } } internal static HCURSOR Null => default(HCURSOR); internal bool IsNull => Value == (IntPtr)0; public static explicit operator HCURSOR(HANDLE handle) { return new HCURSOR(handle); } public static implicit operator HANDLE(HCURSOR handle) { return new HANDLE(handle); } internal HCURSOR(IntPtr value) { Value = value; } public static implicit operator IntPtr(HCURSOR value) { return value.Value; } public static explicit operator HCURSOR(IntPtr value) { return new HCURSOR(value); } public static bool operator ==(HCURSOR left, HCURSOR right) { return left.Value == right.Value; } public static bool operator !=(HCURSOR left, HCURSOR right) { return !(left == right); } public bool Equals(HCURSOR other) { return Value == other.Value; } public override bool Equals(object obj) { if (obj is HCURSOR) { HCURSOR other = (HCURSOR)obj; return Equals(other); } return false; } public override int GetHashCode() { return Value.GetHashCode(); } public override string ToString() { DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(2, 1); defaultInterpolatedStringHandler.AppendLiteral("0x"); defaultInterpolatedStringHandler.AppendFormatted(Value, "x"); return defaultInterpolatedStringHandler.ToStringAndClear(); } public static implicit operator HICON(HCURSOR value) { return new HICON(value.Value); } } }