private void SetWindowOpacity(object sender, double opacity) { if (this.InvokeRequired) { OpacityChangeDelegate d = new OpacityChangeDelegate(SetWindowOpacity); this.Invoke(d, new object[] { sender, opacity }); } else { this.Opacity = opacity; } }
private void OpacityChanged(object sender, double opacity) { if (this.InvokeRequired) { OpacityChangeDelegate d = new OpacityChangeDelegate(OpacityChanged); this.Invoke(d, new object[] { sender, opacity }); } else { if (!this.Disposing && !this.IsDisposed) { //Very rarely the control might be disposing or disposed when this triggers //So for safety reasons here is a check this.Opacity = opacity; } } }