コード例 #1
0
        public override ObservableCollection <INavigationTreeItem> GetMyChildren()
        {
            ObservableCollection <INavigationTreeItem> childrenList = new ObservableCollection <INavigationTreeItem>();

            INavigationTreeItem item;

            string fn = GetFolderPath(SpecialFolder.UserProfile);

            fn = fn + "\\Links";

            try
            {
                DirectoryInfo dirInfo = new DirectoryInfo(fn);
                if (!dirInfo.Exists)
                {
                    return(childrenList);
                }

                string fileResolvedShortCut = "";

                foreach (FileInfo finfo in dirInfo.GetFiles())
                {
                    if (finfo.Name.ToUpper().EndsWith(".LNK"))
                    {
                        fileResolvedShortCut = FolderUtil.ResolveShortCut(finfo.FullName);
                        if (!String.IsNullOrEmpty(fileResolvedShortCut))
                        {
                            FileInfo fileInfo = new FileInfo(fileResolvedShortCut);

                            item = new NavigationFileItem();
                            item.FriendlyName = fileInfo.Name != string.Empty ? fileInfo.Name : fileInfo.ToString();
                            item.FullPathName = fileInfo.FullName;

                            childrenList.Add(item);
                        }
                    }
                }
            }


            catch { }

            return(childrenList);
        }
コード例 #2
0
        public override ObservableCollection <INavigationTreeItem> GetMyChildren()
        {
            ObservableCollection <INavigationTreeItem> childrenList = new ObservableCollection <INavigationTreeItem>();
            INavigationTreeItem item;

            try
            {
                DirectoryInfo dirInfo = new DirectoryInfo(FullPathName);

                if (!dirInfo.Exists)
                {
                    return(childrenList);
                }

                foreach (DirectoryInfo di in dirInfo.GetDirectories())
                {
                    item = new NavigationFolderItem();
                    item.FullPathName        = FullPathName + "\\" + di.Name;
                    item.FriendlyName        = di.Name;
                    item.IncludeFileChildren = IncludeFileChildren;
                    childrenList.Add(item);
                }

                if (IncludeFileChildren)
                {
                    foreach (FileInfo file in dirInfo.GetFiles())
                    {
                        NavigationTreeItem fileItem = new NavigationFileItem();
                        fileItem.FriendlyName        = file.Name;
                        fileItem.FullPathName        = file.FullName;
                        fileItem.IncludeFileChildren = IncludeFileChildren;
                        childrenList.Add(fileItem);
                    }
                }
            }
            catch (UnauthorizedAccessException e)
            {
                Console.WriteLine(e.ToString());
            }

            return(childrenList);
        }
コード例 #3
0
        public override ObservableCollection <INavigationTreeItem> GetMyChildren()
        {
            ObservableCollection <INavigationTreeItem> childrenList = new ObservableCollection <INavigationTreeItem>();
            INavigationTreeItem item1;

            DriveInfo drive = new DriveInfo(this.FullPathName);

            if (!drive.IsReady)
            {
                return(childrenList);
            }

            DirectoryInfo di = new DirectoryInfo(((DriveInfo)drive).RootDirectory.Name);

            if (!di.Exists)
            {
                return(childrenList);
            }

            foreach (DirectoryInfo dir in di.GetDirectories())
            {
                item1 = new NavigationFolderItem();
                item1.FullPathName        = FullPathName + "\\" + dir.Name;
                item1.FriendlyName        = dir.Name;
                item1.IncludeFileChildren = this.IncludeFileChildren;
                childrenList.Add(item1);
            }

            if (this.IncludeFileChildren)
            {
                foreach (FileInfo file in di.GetFiles())
                {
                    item1 = new NavigationFileItem();
                    item1.FullPathName = FullPathName + "\\" + file.Name;
                    item1.FriendlyName = file.Name;
                    childrenList.Add(item1);
                }
            }
            return(childrenList);
        }