/// <summary>Releases unmanaged and - optionally - managed resources.</summary> /// <param name="disposing"> /// <see langword="true"/> to release both managed and unmanaged resources; <see langword="false"/> to release only unmanaged resources. /// </param> protected virtual void Dispose(bool disposing) { if (isDisposed) { return; } isDisposed = true; hwnd?.Dispose(); // Calls DestroyWindow hwnd = null; wCls?.Unregister(); }
/// <summary>Initializes a new instance of the <see cref="BasicMessageWindow"/> class.</summary> /// <param name="callback">Specifies the callback method to use to process messages.</param> public BasicMessageWindow(BasicMessageWindowFilter callback = null) { MessageFilter = callback; weakSelfRef = new WeakReference(this); hwnd = CreateWindow(); }