コード例 #1
0
        public FileListViewNode ToFileListViewNode()
        {
            string imagePath;

            switch (this.FileType)
            {
            case FileType.File:
                imagePath = "/Resources/UI/Default/File.png";
                break;

            case FileType.Directory:
                imagePath = "/Resources/UI/Default/FolderOrange.png";
                break;

            default:
                imagePath = "/Resources/UI/Default/File.png";
                break;
            }
            FileListViewNode file = new FileListViewNode()
            {
                ImagePath     = imagePath,
                FileType      = this.FileType,
                Name          = this.FileName,
                FullName      = this.FullName,
                LastWriteTime = this.DateModified.ToString("G"),
                Extension     = this.Extension,
                Length        = this.Size
            };

            return(file);
        }
コード例 #2
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            FileListViewNode fileListViewNode = value as FileListViewNode;

            if (fileListViewNode.FileType == FileType.Directory)
            {
                return(fileListViewNode.ImagePath);
            }
            //todo:1处理图标性能问题
            //todo:2处理图标预览效果问题
             BitmapImage img = ThumbnailHelper.GetInstance().GetBitmapThumbnail(fileListViewNode.FullName).ToBitmapImage();

            return(img);
        }
コード例 #3
0
ファイル: UpyunClient.cs プロジェクト: hyfree/OneFileManager
        public List <FileListViewNode> ReadDir(string url)
        {
            var list  = upyun.ReadDir(url);
            var files = new List <FileListViewNode>();

            foreach (var item in list)
            {
                FileType         fileType         = item.Filetype.Equals("file") ? FileType.File : FileType.Directory;
                FileListViewNode fileListViewNode = new FileListViewNode()
                {
                    Name     = item.Filename,
                    FileType = fileType,
                    Length   = item.Size,
                    FullName = url + item.Filename
                };

                files.Add(fileListViewNode);
            }
            return(files);
        }
コード例 #4
0
        private void OpenNewTabCommand_Executed(object sender, ExecutedRoutedEventArgs e)
        {
            string path = @"C:\";

            if (e.Parameter != null && e.Parameter.GetType() == typeof(FileListViewNode))
            {
                FileListViewNode fileListViewNode = e.Parameter as FileListViewNode;
                if (fileListViewNode != null)
                {
                    switch (fileListViewNode.FileType)
                    {
                    case FileType.File:
                        path = Path.GetDirectoryName(fileListViewNode.FullName);
                        break;

                    case FileType.Directory:
                        path = fileListViewNode.FullName;
                        break;

                    case FileType.Volume:
                        break;

                    case FileType.Mtp:
                        break;

                    case FileType.Unknown:
                        break;

                    default:
                        break;
                    }
                }
            }

            tabControl.SelectedIndex = tabControl.Items.Count - 1;
        }
コード例 #5
0
 public FilePropertyWindow(FileListViewNode fileListViewNode)
 {
     this.FileNode = fileListViewNode;
     InitializeComponent();
     this.DataContext = FileNode;
 }