WPF中TextBox文件拖放问题

原文: WPF中TextBox文件拖放问题

在WPF中,当我们尝试向TextBox中拖放文件,从而获取其路径时,往往无法成功(拖放文字可以成功)。造成这种原因关键是WPF的TextBox对拖放事件处理机制的不同,具体可参考这篇文章Textbox Drag/Drop in WPF,本文只是介绍如何解决这一问题。

解放方法如下:    

    1. 使用PreviewDragOverPreviewDrop事件代替DragOverDrop事件。
      <TextBox Height="100" PreviewDragOver="TextBox_PreviewDragOver" PreviewDrop="TextBox_PreviewDrop"/>
    2. PreviewDragOver事件中加入e.Handled = true操作。
      private void TextBox_PreviewDragOver(object sender, DragEventArgs e)
      {
          e.Effects = DragDropEffects.Copy;
          e.Handled = true;
      }

猜你喜欢

转载自www.cnblogs.com/lonelyxmas/p/9440363.html