2010-10-12 130 views
0

嘿家伙,一个简单的问题,但我不知道这样做。调用同一个类中的方法?

当我退出我的应用程序时,我想调用我的保存方法来检查用户是否想保存任何更改。

如何调用保存点击事件方法?这是我想出了:

 if (isDirty == true) 
     { 
      saveToolStripMenuItem(); 
     } 
     this.Close(); 

但是,这并不工作

+0

“但那不行” - 以什么方式?它不会编译,或者在执行时失败?怎么了?请参阅http://tinyurl.com/so-hints – 2010-10-12 07:27:21

回答

1

如果这是一个WinForm应用程序,有形式关闭事件,你可以连接此事件。

See here

+0

我如何进入结账活动?我可以找到“加载”事件和“激活”事件,但没有别的。 – 2010-10-12 07:31:41

2

创建一个Save方法。 将实际的保存逻辑放入保存方法中。

  • 从saveToolStripMenuItem中调用Save方法 - 单击事件处理程序。
  • 当您关闭表单时调用Save方法。
1

我建议你使用Form类的FormClosing事件;您可以检查是否存在未保存的更改并提示用户是否要保存更改(YesNoCancel对话框,如果他按下Cancel,则可以设置e.Cancel = true)。至于你的直接例子,我建议你把实际的保存逻辑放到一个Save()方法中,然后调用它;如果这不是您想要的或者不可能的,您仍然可以手动调用实际执行保存的按钮或菜单项的Click事件处理程序,只要确保指定了实际使用的参数即可。

相关问题