一種解決方案是將任何一次性使用的類型封裝在派生自System.ComponentModel.Component
的類中,或者實現System.ComponentModel.IComponent
。
然後,您可以將它們添加到由設計器生成的代碼實例化的IContainer中,並且它們將與其他組件一起處理。
E.g.
class MyDisposableComponent : IComponent
{
... implementation
}
class MyUserControl : UserControl
{
MyDisposableComponent myDisposableComponent;
...
void SomeMethod()
{
myDisposableComponent = new MyDisposableComponent();
components.Add(myDisposableComponent);
// myDisposableComponent will be disposed automatically when the
// IContainer components is disposed by the designer-generated
// Dispose implementation.
}
...
}
來源
2010-01-06 21:06:20
Joe
aha ... without * DebuggerNonUserCode * ... – serhio 2010-01-06 16:08:49