private void FrmEditor_FormClosing(object sender, FormClosingEventArgs e)
        {
            //窗体关闭之前确认,如果放弃关闭,则取消关闭
            if (!this.AskSave( ))
            {
                e.Cancel = true;
                return;
            }
        }
关闭前问 是否保存等。。 看返回是什么 进行 保存, 直接关闭 取消继续操作 

解决方案 »

  1.   

          private bool AskSave( )
            {
                //如果已经修改了当前文件,则询问是否保存
                if (this._Modified)  //进行修改
                {
                    switch (MessageBox.Show("文件已修改, 是否保存?", "提示",
                        MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, //是否取消
                        MessageBoxDefaultButton.Button1))
                    {
                        case DialogResult.Yes:  //需要保存,则保存,然后返回true
                            if (string.IsNullOrEmpty(this._FileName))
                            {
                                SaveFileDialog sfdlg = new SaveFileDialog( );//保存
                                sfdlg.Filter = "文本文件(*.txt)|*.TXT";
                                sfdlg.FileName = this._FileName;
                                if (sfdlg.ShowDialog( ) == DialogResult.OK)
                                {
                                    this._FileName = sfdlg.FileName;
                                }
                                else //没有选择文件,退出
                                {
                                    return true;     
                                }  
                            }
                            //保存到新文件
                            this.SaveFile( );
                            return true;
                        case DialogResult.Cancel: //取消操作,返回false
                            return false;
                        case DialogResult.No:   //不保存,则返回true
                            return true;
                    }
                }
                //文件没有修改,继续操作
                return true;
            }
      

  2.   

    如果你认为某个东西你不理解,就删除它(注释它),然后你去按照系统应有的功能来测试。如果测试通过,这就说明你删除的代码确实该删,它是心血来潮的东西。如果测试出现bug,你就自己定义实现逻辑代码来看看效果.........这样,你就自己掌握了读代码的能力!写注释?大多数人强调的都是无能的做法。
      

  3.   

    不是,大家为什么都批斗俺呢???
    俺这是看 别人的程序,看不懂什么意思撒,想让大家告诉俺那些方法写的格式都是什么意思,俺从头到尾都是自学,也没个老师教,发个小贴也批斗俺……
    我说我容易么?上辈子欠你的…………
    ok,是不是我要MSDN看方法?
      

  4.   

    不是,大家为什么都批斗俺呢???
    俺这是看 别人的程序,看不懂什么意思撒,想让大家告诉俺那些方法写的格式都是什么意思,俺从头到尾都是自学,也没个老师教,发个小贴也批斗俺……
    我说我容易么?上辈子欠你的…………
    ok,是不是我要MSDN看方法? 
     
      

  5.   

    SaveFileDialog 提示用户选择文件的保存位置
    DialogResult 枚举
    指定标识符以指示对话框的返回值。
    看看MSDN
      

  6.   

    就这里还不明白                           sfdlg.FileName = this._FileName;
                                if (sfdlg.ShowDialog( ) == DialogResult.OK)
                                {
                                    this._FileName = sfdlg.FileName;
                                }
    sfdlg.FileName = this._FileName;//这条是不是要不要都行????????
    sfdlg.ShowDialog( ) == DialogResult.OK//它的意思是不是当按了保存键后,把输入的名字赋给原文本啊???    简单解释下,ShowDialog呗?
      

  7.   


    太幽默了。呵呵。大实话。
    这么多注视了还嫌少,哪看不懂的,查msdn吧。