【问题标题】:How to get the file name when dragging a file(before dropping the file) in windows?在 Windows 中拖动文件(在放置文件之前)时如何获取文件名?
【发布时间】:2014-08-10 03:30:17
【问题描述】:

我正在开发一个 WPF 应用程序。我将在此应用程序中进行拖放,但在拖动文件(不拖放)时我需要获取文件的名称(或路径)。我认为这可能与一些shell编程有关。有人知道怎么实现吗?

【问题讨论】:

    标签: c# wpf windows shell


    【解决方案1】:

    “拖动文件时获取文件名”是什么意思?您是否在问如何在将文件拖入 WPF 应用程序时自动复制文件名?

    • 获取文件名: 尝试单击一次文件图标,然后在大约 2-3 秒后再次单击文件名。名称将成为可编辑的文本字段,您可以在拖动前复制名称,以粘贴到 WPF 应用程序中。

    • 获取文件路径: 在 Windows 资源管理器(文件浏览器)中,浏览到要拖动的文件。在显示您浏览过的文件夹的窗口顶部栏中,右键单击并选择“将地址复制为文本”。然后,您可以 Ctrl+V 将文件路径放入任何文本字段。

    有点难以理解你在问什么(这里有点累),如果我的回答没有任何帮助,请见谅哈哈。

    【讨论】:

      【解决方案2】:
         private void MyControl_DragOver(object sender, DragEventArgs e) {
              e.Effects = DragDropEffects.None;
              if (e.Data.GetDataPresent(DataFormats.FileDrop)) {
                  string[] paths = e.Data.GetData(DataFormats.FileDrop) as string[];
                  if(paths.Lenght > 0 && File.Exists(paths[0])) { // <- example, you must handle it in your way
                      e.Effects = DragDropEffects.Copy | DragDropEffects.Move;
                  }
              }
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-09-20
        • 1970-01-01
        • 1970-01-01
        • 2012-01-11
        • 2020-05-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多