我想创建一个应用程序,可以直接从客户端桌面查看与他/她的谷歌驱动器存储相同的层次结构中的文件。但为此我必须获得该特定用户帐户的文件夹层次结构。在我的应用程序中,我试图在树视图中查看文件夹层次结构。以下是代码:
internal async Task<TreeView> SetTreeView(TreeNode node, string fileId, TreeView treeview1)
{
TreeNode t;
if (node == null)
{
t = new TreeNode();
}
else
t = node;
FilesResource.GetRequest req = driveservice.Files.Get(fileId);
var root = req.Execute();
FilesResource.GetRequest get;
await DriveV2.Authorize();
var childrenIds = DriveV2.GetChildren(root.Id);
for ( int i = 0; i < childrenIds.Count; i++)
{
get = driveservice.Files.Get(childrenIds[i]);
var file = get.Execute();
var n = t.Nodes.Add(file.Name);
SetTreeView(n,childrenIds[i], treeview1);
}
treeview1.Nodes.Add(t);
//doc.Save("file.xml");
return treeview1;
}
如果我错在任何一点,请纠正我,并建议一些其他实现,通过这些实现我可以在XML文件中存储层次结构(存储文件夹的ID)或直接进入树视图。
编辑:我编写的代码确实将文件夹添加到树视图中,但所有文件夹都在同一级别而不是分层格式。