代码之家  ›  专栏  ›  技术社区  ›  Aldo Huerta

如何使用FormClosed或FormCloing事件关闭文本文件?

  •  0
  • Aldo Huerta  · 技术社区  · 8 年前

    我有下一个代码:

    Process open_txt = new Process();
       public Form1()
       {
          InitializeComponent();
          open_txt.StartInfo.FileName = @"C:\Users\Desktop\Test.txt";
          open_txt.Start();
       }
    

    使用此代码,我打开一个 .txt 称为文件 Test.txt 在上面写字。

    我希望当我用鼠标关闭窗体时(我的意思是,当我点击右上角的小红色十字时,换句话说,就像我们所有人都关闭了所有窗口一样) .txt文件 文件已调用 测试.txt ,也关闭。

    我知道我需要利用这个活动 FormClosed FormClosing ,但它不起作用,我在这个事件中有这个,但没有关闭 .txt文件 文件

    private void Form1_FormClosed(object sender, FormClosedEventArgs e)
    {
       open_txt.Close();
    }
    

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
       open_txt.Close();
    }
    

    如何关闭 .txt文件 文件

    2 回复  |  直到 8 年前
        1
  •  3
  •   D Stanley    8 年前

    你所拥有的只是对 Process 看来你唯一能做的就是 Kill() 过程。这看起来相当严厉,但可以做你想做的事。

    它也可能有意想不到的副作用。如果电脑使用Word打开文本文件,并且当您终止该进程时,也会丢失对其他文档的任何未保存的更改,该怎么办?

    如果你想对文件关闭的时间有更多的控制,那么你可能需要在你的应用程序中嵌入一个编辑器(或查看器),而不仅仅是在操作系统中。

        2
  •  1
  •   itsme86    8 年前

    使用 Kill() 方法 Form1_FormClosing() 方法:

    open_txt.Kill();