自制Windows Mobile的文件浏览器
使用Windows 自带的文件浏览器只能察看My Doucument中间的文件,这叫人非常不爽。
于是我自己就做了一个文件浏览器
 public partial class FileExplorerDll : UserControl
    public partial class FileExplorerDll : UserControl {
    { public FileExplorerDll()
        public FileExplorerDll() {
        { InitializeComponent();
            InitializeComponent(); addNode(this.treeView1);
            addNode(this.treeView1); }
        }
 private string selectName;
        private string selectName;
 public string SelectName
        public string SelectName {
        { get
            get  {
            { return selectName;
                return selectName; }
            } }
        }
 public new void Show()
        public new void Show() {
        { this.Visible = true;
            this.Visible = true; }
        } 
    private void addNode(TreeView tv)
        private void addNode(TreeView tv) {
        { string[] dirNames = Directory.GetDirectories(@"\");
            string[] dirNames = Directory.GetDirectories(@"\"); string[] fileNames = Directory.GetFiles(@"\");
            string[] fileNames = Directory.GetFiles(@"\"); int index = 0;
            int index = 0; 
            foreach (string dirName in dirNames)
            foreach (string dirName in dirNames) {
            { tv.Nodes.Add(dirName);
                tv.Nodes.Add(dirName); addNode(treeView1.Nodes[index], dirName);
                addNode(treeView1.Nodes[index], dirName); tv.Nodes[index].ImageIndex = 0;
                tv.Nodes[index].ImageIndex = 0; index++;
                index++; }
            } foreach (string fileName in fileNames)
            foreach (string fileName in fileNames) {
            { tv.Nodes.Add(fileName);
                tv.Nodes.Add(fileName); tv.Nodes[index].ImageIndex = 1;
                tv.Nodes[index].ImageIndex = 1; index++;
                index++; }
            } }
        }
 private void addNode(TreeNode tn, string path)
        private void addNode(TreeNode tn, string path) {
        { string[] dirNames;
            string[] dirNames; string[] fileNames;
            string[] fileNames; int index = 0;
            int index = 0;
 if (Directory.Exists(path))
            if (Directory.Exists(path)) {
            { dirNames = Directory.GetDirectories(path);
                dirNames = Directory.GetDirectories(path);
 foreach (string dirName in dirNames)
                foreach (string dirName in dirNames) {
                { tn.Nodes.Add(dirName.Remove(0, path.Length));
                    tn.Nodes.Add(dirName.Remove(0, path.Length)); addNode(tn.Nodes[index], dirName);
                    addNode(tn.Nodes[index], dirName); tn.Nodes[index].ImageIndex = 0;
                    tn.Nodes[index].ImageIndex = 0; index++;
                    index++; }
                }
 fileNames = Directory.GetFiles(path);
                fileNames = Directory.GetFiles(path);
 foreach (string fileName in fileNames)
                foreach (string fileName in fileNames) {
                { tn.Nodes.Add(fileName.Remove(0, path.Length));
                    tn.Nodes.Add(fileName.Remove(0, path.Length)); tn.Nodes[index].ImageIndex = 1;
                    tn.Nodes[index].ImageIndex = 1; index++;
                    index++; }
                } }
            } }
        }
 private void button1_Click(object sender, EventArgs e)
        private void button1_Click(object sender, EventArgs e) {
        { selectName = this.treeView1.SelectedNode.FullPath;
            selectName = this.treeView1.SelectedNode.FullPath; this.Visible = false;
            this.Visible = false; }
        }
 private void button2_Click(object sender, EventArgs e)
        private void button2_Click(object sender, EventArgs e) {
        { selectName = "";
            selectName = ""; this.Visible = false;
            this.Visible = false; }
        } }
    }基本功能实现了,可是加载的速度实在是慢!
还有一个巨大的缺陷,就是用户通过我的这个界面选择的文件地址无法返回,请高手指教,谢谢!
 
                    
                 
 
    
 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号