我有一种情况,用户点击UserControl的X,如果存在某种条件,我想继续显示用户控件.我认为召唤base.Dispose(false)可以解决问题,但事实并非如此.我该怎么做呢?
FeatureView.Designer.cs
partial class FeatureView
{
// User clicked the X on the control
protected override void Dispose(bool disposing)
{
// Note: base.GetType() = FeatureView
if (someCondition) // then dispose
{
base.Dispose(true);
}
else // keep displaying the Feature, do not dispose
{
base.Dispose(false); // nope
}
}
}
Run Code Online (Sandbox Code Playgroud)
FeatureView.cs
public partial class FeatureView : System.Windows.Forms.UserControl
{
}
Run Code Online (Sandbox Code Playgroud)
小智 6
您的用户控件必须嵌入到可见的表单中.在lvel表单中,您可以捕获FormClosing事件并将cancel设置为true.
this.FormClosing += Form_ManageFavorites_FormClosing;
private void Form_ManageFavorites_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
89 次 |
| 最近记录: |