<PackageReference Include="System.Drawing.Common" Version="10.0.0-rc.2.25502.107" />

HDC

struct HDC : IHandle<HDC>, IEquatable<HDC>
using System; using System.CodeDom.Compiler; using System.Diagnostics; using System.Drawing; using System.Numerics; using System.Runtime.CompilerServices; using Windows.Win32.Foundation; namespace Windows.Win32.Graphics.Gdi { [DebuggerDisplay("{Value}")] [GeneratedCode("Microsoft.Windows.CsWin32", "0.3.151+58e949951d.RR")] internal readonly struct HDC : IHandle<HDC>, IEquatable<HDC> { internal unsafe readonly void* Value; HDC IHandle<HDC>.Handle { get { return this; } } [Nullable(2)] object IHandle<HDC>.Wrapper { [NullableContext(2)] get { return null; } } internal static HDC Null => default(HDC); internal unsafe bool IsNull => Value == null; internal Point GetViewPointOrigin() { if (!(bool)PInvokeCore.GetViewportOrgEx(this, out Point lppoint)) return Point.Empty; return lppoint; } internal Point GetWindowOrigin() { if (!(bool)PInvokeCore.GetWindowOrgEx(this, out Point lppoint)) return Point.Empty; return lppoint; } internal Matrix3x2 GetWorldTransform() { if ((bool)PInvokeCore.GetWorldTransform(this, out XFORM lpxf)) return Unsafe.As<XFORM, Matrix3x2>(ref lpxf); return Matrix3x2.Identity; } internal unsafe HDC(void* value) { Value = value; } internal unsafe HDC(IntPtr value) { this = new HDC((void*)(long)value); } public unsafe static implicit operator void*(HDC value) { return value.Value; } public unsafe static explicit operator HDC(void* value) { return new HDC(value); } public unsafe static bool operator ==(HDC left, HDC right) { return left.Value == right.Value; } public static bool operator !=(HDC left, HDC right) { return !(left == right); } public unsafe bool Equals(HDC other) { return Value == other.Value; } public override bool Equals(object obj) { if (obj is HDC) { HDC other = (HDC)obj; return Equals(other); } return false; } public unsafe override int GetHashCode() { return (int)Value; } public unsafe override string ToString() { DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(2, 1); defaultInterpolatedStringHandler.AppendLiteral("0x"); defaultInterpolatedStringHandler.AppendFormatted((UIntPtr)Value, "x"); return defaultInterpolatedStringHandler.ToStringAndClear(); } public unsafe static implicit operator IntPtr(HDC value) { return new IntPtr(value.Value); } public unsafe static explicit operator HDC(IntPtr value) { return new HDC(value.ToPointer()); } public unsafe static explicit operator HDC(UIntPtr value) { return new HDC(value.ToPointer()); } } }