当前位置:编程学习 > C#/ASP.NET >>

实现一个mdi多窗体tex文件 打开及保存的问题。(希望各位高手帮忙解答 谢谢~)

实现一个mdi多窗体打开及保存的问题。

首先有一个主窗体 菜单第一项 文件- 下设“打开” “保存”2个选项。

可以在主窗体中 连续打开本地多个 TXT 文件(副窗体) 查看。(其中有子窗体布局功能(层叠,纵向,横向))

现在想实现:假设 打开C盘下的 3个 TXT文件 ,鼠标点击其中的一个 TXT文件(激活) 然后点击主窗体 菜单-“保存”选项  把当前处于激活窗台的副窗体中的TXT文件另存为自己想要保存的地方。 



打开文件的功能已经完成,可是保存的功能不懂怎么编写,请各位高手帮忙提出完整的代码 谢谢了~



-------------------------------------------------------------------------------------------------------------------------------------

主窗体代码:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace 多功能窗体
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        private void ShowTxtBox(string strl)
        {
            Form2 f2 = new Form2(strl);
            f2.MdiParent = this;
            f2.Show();
        }

        private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog open = new OpenFileDialog();
            open.Filter = "txt files(*.txt)|*.txt|All files(*.*)|*.*";
            DialogResult dr = open.ShowDialog();
            if (dr == DialogResult.OK)
            {
                ShowTxtBox(open.FileName);
            }

        }

        private void 纵向平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.TileVertical);
        }

        private void 横向平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.TileHorizontal);
        }

        private void 层叠显示ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LayoutMdi(MdiLayout.Cascade);
        }

        private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SaveFileDialog save = new SaveFileDialog();
            savefile(save.FileName);
        }

    }
}






副窗体代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace 多功能窗体
{
    public partial class Form2 : Form
    {
        private string strl = "";
        /// <summary>
        /// 
        /// </summary>
        /// <param name="strl">文本文件路径</param>
        public Form2(string strl)
        {
            InitializeComponent();
            this.strl = strl;
        }

        public void Form2_Load(object sender, EventArgs e)
        {
            FileStream fs = null;
            StreamReader sr = null;



            try
            {
                fs = new FileStream(strl, FileMode.Open);
                sr = new StreamReader(fs, Encoding.GetEncoding("gb2312"));
                StringBuilder sb = new StringBuilder();
                string strline = sr.ReadLine();
                while (strline != null)
                {
                    sb.Append(strline);
                    strline = sr.ReadLine();
                }

                this.textBox1.Text = sb.ToString();

            }
            catch (IOException e1)
            {
                MessageBox.Show(e1.ToString());
            }
            finally
            {
                if (sr != null) sr.Close();
                if (fs != null) fs.Close();
            }
        }


    }
}
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,