Control.Dispose(Boolean) Control.Dispose(Boolean) Control.Dispose(Boolean) Control.Dispose(Boolean) Method


释放由 Control 和它的子控件占用的非托管资源,另外还可以释放托管资源。Releases the unmanaged resources used by the Control and its child controls and optionally releases the managed resources.

 override void Dispose(bool disposing);
protected override void Dispose (bool disposing);
override this.Dispose : bool -> unit
Protected Overrides Sub Dispose (disposing As Boolean)


Boolean Boolean Boolean Boolean

若要释放托管资源和非托管资源,则为 true;若仅释放非托管资源,则为 falsetrue to release both managed and unmanaged resources; false to release only unmanaged resources.


调用此方法由公共Dispose()方法和Finalize方法。Dispose()This method is called by the public Dispose() method and the Finalize method.Dispose() 调用受保护Dispose(Boolean)方法替换disposing参数设置为trueinvokes the protected Dispose(Boolean) method with the disposing parameter set to true. Finalize 调用Disposedisposing设置为falseFinalize invokes Dispose with disposing set to false.

disposing 参数为 true 时,此方法释放该 Control 引用的、由任何托管对象持有的全部资源。When the disposing parameter is true, this method releases all resources held by any managed objects that this Control references. 此方法调用每个引用对象的 Dispose() 方法。This method invokes the Dispose() method of each referenced object.


Dispose 可以由其他对象多次调用。 Dispose can be called multiple times by other objects. 重写时Dispose(Boolean)小心不要引用已经释放的早期调用中的对象DisposeWhen overriding Dispose(Boolean) be careful not to reference objects that have been previously disposed of in an earlier call to Dispose. 有关如何实现详细信息Dispose(Boolean),请参阅实现 Dispose 方法For more information about how to implement Dispose(Boolean), see Implementing a Dispose Method.

有关详细信息DisposeFinalize(),请参阅清理了非托管资源重写 Finalize 方法For more information about Dispose and Finalize(), see Cleaning Up Unmanaged Resources and Overriding the Finalize Method.