【问题标题】:Open dropbox file with OpenFileDialog and dropnet c#使用 OpenFileDialog 和 dropnet c# 打开保管箱文件
【发布时间】:2015-12-10 17:32:59
【问题描述】:

我正在创建一个支持 Dropbox 的 c# winforms 桌面程序。问题出现在用户必须选择他想要打开的文件(来自 Dropbox)的地方。是否可以使用OpenFileDialog 显示此人的保管箱帐户的内容?我知道您可以直接将 openFileDialog 指向本地保管箱文件夹,但我不想这样做。这意味着该人必须在该计算机上安装了保管箱,然后才能使用我的程序的此功能。如果你不能这样做,你将如何使用树和列表视图来创建你自己的 openFileDialog?我想保持设计与标准 openFileDialog 相同。我读到你可以创建一个说唱歌手类来自定义 openFileDialog 但不知道这将如何工作。

我在谷歌上搜索过,但找不到我要找的东西。任何建议或示例将不胜感激。

我正在使用 dotnet 4.5 和 dropnet 库。

谢谢

【问题讨论】:

标签: c# winforms dropbox openfiledialog dropnet


【解决方案1】:

OpenFileDialog 仅显示现有文件。

您的程序可以像投递箱客户端应用程序一样将所有文件加载到本地文件夹中的客户端。然后,当您显示OpenFileDialog 时,您可以将该文件夹设置为文件对话框的InitialDirectory

此外,如果您不想加载所有文件,您可以在本地文件夹中创建虚拟(空)文件,并在用户选择显示来自OpenFileDialog 的文件后,然后下载文件并将其显示到用户。

【讨论】:

  • 这可能行得通。您将如何创建虚拟目录结构?我的意思是显示保管箱帐户的内容而不将其下载到本地文件夹。如果您可以将打开的对话框锁定到该虚拟目录,那么它将起作用。此外,是的,我不反对使用 Dropbox api。你指的是v1还是v2?我只选择了 dropnet,因为它看起来对用户最友好。
  • 我从未使用过投递箱,这是一个想法,实现起来很简单。您可以找到用户投递箱帐户的所有文件和文件夹层次结构,并创建目录和零大小文件。正如我在答案中所说,显示OpenFileDialog 并选择您创建为InitialDirectory 的根目录,然后在用户选择一个文件后,您可以首先验证它是否是从该目录中选择的,然后下载它并将其显示给用户。您也可以通过这种方式缓存文件。
  • @Hendri 该帖子似乎分享了主要思想并回答了您的问题。如果您将答案标记为已接受,那就太好了:)
  • 对不起,我到现在还没有机会尝试。我让它工作。唯一的问题是我无法将 openFileDialog 锁定到该目录。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-21
  • 1970-01-01
  • 1970-01-01
  • 2016-10-02
  • 1970-01-01
  • 1970-01-01
  • 2011-10-21
相关资源
最近更新 更多