C# 具有MVVM结构的视图树中的文件夹视图?
我在一个名为data的项目中有三个文件,该项目是VisualStudio中的一个数据库。我观看了一个名为MVVM教程c的教程和一个文件树!这是链接:大约12:19,他写了这行代码C# 具有MVVM结构的视图树中的文件夹视图?,c#,mvvm,C#,Mvvm,我在一个名为data的项目中有三个文件,该项目是VisualStudio中的一个数据库。我观看了一个名为MVVM教程c的教程和一个文件树!这是链接:大约12:19,他写了这行代码 return GetLogicalDrives().Select(drive => new DirectoryItem { fullPath = drive, Type = DirectoryItemType.Drive }).ToList(); 这段代码对我不起作用,我知道我没有Directory.GetL
return GetLogicalDrives().Select(drive => new DirectoryItem { fullPath = drive, Type = DirectoryItemType.Drive }).ToList();
这段代码对我不起作用,我知道我没有Directory.GetLogicalDrives,但这不是我的文件夹视图的样子,所以他在视频中使用的三个不同文件的名称空间是数据,这是我在这三个文件中的代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Data
{
public static class DirectoryStructure
{
public static List<DirectoryItem> GetLogicalDrives()
{
return GetLogicalDrives().Select(drive => new DirectoryItem { fullPath = drive, Type = DirectoryItemType.Drive }).ToList();
}
public static string GetFilefolderName(string path)
{
if(string.IsNullOrEmpty(path))
{
return string.Empty;
}
var normalizedPath = path.Replace('/', '\\');
var lastIndex = normalizedPath.LastIndexOf('\\');
if(lastIndex <= 0)
{
return path;
}
return path.Substring(lastIndex + 1);
}
}
public class DirectoryItem
{
public DirectoryItemType Type { get; set;}
public string fullPath { get; set; }
public string Name { get { return DirectoryStructure.GetFilefolderName(this.fullPath); } }
}
public enum DirectoryItemType
{
Drive,
File,
Folder
}
}
我不知道为什么我会从那一行得到一个错误?我的文件夹结构类似于此项目:Data\Directory在此文件夹中,我有DirectoryStructure,其余文件位于同一文件路径下,但还有一个名为DataFolder的文件夹。有人知道为什么这对我不起作用吗?您的代码中有两个问题: 您的GetLogicalDrives方法在其主体中调用自身,它将无法使用您的逻辑,因为没有可浏览的列表 文件中缺少using指令。若要访问Directory类,然后调用GetLogicalDrivers方法,必须使用文件顶部的System.IO添加该方法
我希望这会对您有所帮助。Try Environment.GetLogicalDrivesI我想我是在自己调用它,但如果您在我给您的时间代码的准确时间查看视频,他会这样做吗?在视频中,它不是自己调用的,而是从目录类将调用委托给具有相同名称的方法。我认为您不应该正确地看到它,他这样做:return Directory.GetLogicalDrives.Selectdrive=>newdirectoryitem{fullPath=drive,Type=DirectoryItemType.drive}.ToList;是的,他引用了目录,但我没有看到他在任何时候创建的那个文件,或者我的意思是,我没有看到他在任何时候创建的类现在我明白你说的了,我不明白,你的意思是它是system.io库的一部分