C#实现文件管理器

下面详细介绍这个小程序能实现的功能:
1.包括TXET文本的新建、复制、粘贴、删除和撤销等文件操作。
2.对文本字体的操作:粗体、下划线和斜体。
3.包括文本夹的新建、复制、粘贴、删除等文件夹操作。
4.五种查看方式:列表、小图标、大图标、标题和详细。

软件界面

文件管理器主界面


进入驱动器D盘后的界面


新建文件界面


新建文件夹界面


文本文档界面

System.IO
System.IO命名空间很重要,它包含了许多的类,以便让托管应用程序可以通过同步或异步方式提供文本I/O以及其他形式的输入和输出方式,从而操作文件系统或流的输入和输出操作。System.IO的命名空间相当庞大,在本例中,主要用到以下几个方面:

1.File类:它提供了打开,创建,复制,移动,重命名文件以及读写文件属性的静态方法.
2.Directory类:它为目录提供编程接口,使应用程序可以通过简单的方法来创建,删除目录.
3.FileStream类:它允许将文件作为流访问,实现标准的输出,输入操作,可随机的访问文件内容.
4.StreamReader与StreamWriter类:它们支持对文本的读写操作,让应用程序可以访问文件或信息流.

下面,简要说一下在例子中用到的几个控件及它们的属性。

ListView
通过ListView控件,可以在标准视图对话框中进行各种操作(查看,打开文件等)。本例中,主要用到以下功能:
1.View:  a LargeIcon:所有选项都在其旁边显示一个大图标和一个标签。
             b SmallIcon:所有选项都在其旁边显示一个小图标和一个标签。
             c List:只显示一列,该列可以包含一个图标和一个标签。
             d Details:可以显示任意数量的列,只有第一列可以包含图像。
2.SelectedItems:这个属性包含了选中选项的集合。
3.MultiSelect:这个属性设置为true,用户可以选择多个选项。
4.LargeImageList:这个属性包含ImageList,其中ImageList包含ListView中要使用的图像。当View属性为LargeIcon时,可以使用图像。
5.SmallImageList:这个属性包含ImageList,其中ImageList包含ListView中要使用的图像。当View属性为SmallIcon时,可以使用图像。

ImageList
ImageList 控件包含 ListImage 对象的集合,该集合中的每个对象都可以通过其索引或关键字被引用。ImageList 控件不能独立使用,只是作为一个便于向其它控件提供图象的资料中心。
语法:ImageList
ImageList 控件的作用象图像的储藏室,同时,它需要第二个控件显示所储存的图像。第二个控件可以是任何能显示图像 Picture 对象的控件,也可以是特别设计的、用于绑定 ImageList 控件的 Windows 通用控件之一。这些控件包括ListView、ToolBar、TabStrip、Header、ImageCombo、和 TreeView 控件。为了与这些控件一同使用 ImageList,必须通过一个适当的属性将特定的 ImageList控件绑定到第二个控件。对于 ListView 控件,必须设置其 Icons 和 SmallIcons 属性为 ImageList 控件。对于 TreeView、TabStrip、ImageCombo、和 Toolbar 控件,必须设置 ImageList 属性为 ImageList 控件。
在设计时,可以用“ImageList 控件属性”对话框的“图像”选项卡来添加图象。在运行时,可以用 Add 方法给 ListImages 集合添加图象。

ContextMenuStrip
ContextMenuStrip 控件提供了与某个控件关联的快捷菜单。也就是说通过这个控件可以方便的实现在别的控件上弹出右键快捷菜单。
例子:
1、先添加一个ContextMenuStrip 控件到Form上
2、设置目标控件(如窗体、文本框等)的ContextMenuStrip属性,指向你刚才添加的ContextMenuStrip 控件。这样就实现了两者的关联。
3、动态将一些菜单项添加到 ContextMenuStrip 控件中,如:
//上下文菜单项
ContextMenuStrip1.Items.Add(msEditNew);
ContextMenuStrip1.Items.Add(msEditBar1);
ContextMenuStrip1.Items.Add(msEditCut);
ContextMenuStrip1.Items.Add(msEditPaste);
ContextMenuStrip1.Items.Add(msEditDelete);
ContextMenuStrip1.Items.Add(msEditBar2);
这样就OK了,你在目标控件上按右键时将弹出快捷菜单。

通过上面的介绍,大家应该能明白本例中要实现的效果,需要用到的控件及重要属性等,下面,就可以切入正题,如何通过编程,实现我们上面提到的功能。 呵呵,再提一点,也是比较重要的:C#是一种面向对象的编程语言,因此,在编程之前我们就要有“面向对象编程”的思想,在编程的过程中贯彻这样的思想,
同时,这也是符合目前公司里的编程思想。还有一点,尽量做到代码的规范,可以为以后再次开发或别人阅读我们程序起到简便明了的作用。

主要有两个类:Folder.cs和Txt.cs,分别是对文件和文本的相关操作。类里的方法,我都做了详尽的注释,如果还有什么不明白,可以联系我。

Folder.cs

CODE:

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace FileManager.Class
{
    public class Folder
    {
       

  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值