`
zu14
  • 浏览: 459095 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

C#中让ListBox支持文件路径的拖放DragDrop

阅读更多

有时,我们程序,需要加载一个文件列表,这个列表,通常用 ListBox 来存放,为了方便操作,让listBox支持拖放入文件的路径,是个非常好的功能,在 .NET 里面实现这个功能,是非常方便和容易的,只需要3个步骤:

  1. 将 ListBox 的 AllowDrop 属性设为 true
  2. 在 ListBox 的 DragOver 和 DragEnter 事件中处理
void ListBox1DragEnter(object sender, DragEventArgs e)
{
    e.Effect = DragDropEffects.All;
}

void ListBox1DragOver(object sender, DragEventArgs e)
{
    e.Effect = DragDropEffects.All;
}
    

上面的 e.Effect 可以根据实际情况,调节不同的值,不过,如果不确定,就用默认的All

   3. 处理拖放事件

void ListBox1DragDrop(object sender, DragEventArgs e)
{
    if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
    {
        String[] files = (String[])e.Data.GetData(DataFormats.FileDrop);
        foreach (String s in files)
        {
            (sender as ListBox).Items.Add(s);
        }
    }
    

这样就搞定了,哈哈

是不是灰常容易呢

分享到:
评论

相关推荐

    Tree和ListBox组合的拖放

    7. **文件列表**: "DragDrop"可能是包含示例代码、资源或配置文件的项目文件夹,用于演示如何在Dev控件的Tree和ListBox之间实现拖放功能。这个文件夹可能包含.csproj项目文件、.cs代码文件、资源文件以及可能的配置...

    C#鼠标拖动ListBox中的数据进行排序操作

    在C#编程中,`ListBox`控件是一个常用的UI元素,用于展示一系列可选择的项。在实际应用中,我们可能需要实现用户交互性更强的功能,例如允许用户通过鼠标拖动来调整`ListBox`中项的顺序。这篇教程将详细解释如何在C#...

    C#源码--拖拽文件到指定控件并获得其路径(by Peng)

    在C#编程中,拖放(Drag and Drop)功能是一项常用的技术,允许用户将文件或对象从一个位置拖放到另一个位置,例如从桌面拖放到应用程序内的控件。本示例着重讲解如何实现拖拽文件到指定控件(如ListBox)并获取文件...

    C#winform中ListBox拖拽排序

    在C# WinForm应用开发中,常常需要对控件中的数据进行交互操作,例如排序。本教程将详细讲解如何在ListBox控件中实现拖拽排序的功能。ListBox是.NET Framework提供的一种常用控件,用于显示一系列可选择的项目。在...

    C# WinForm两个listBox之间的Item互相拖动

    在C# WinForm应用开发中,用户界面交互是至关重要的,而`ListBox`控件是常用的元素之一,用于展示列表数据。本主题聚焦于“C# WinForm两个listBox之间的Item互相拖动”这一功能,这涉及到Windows窗体应用程序中的...

    listbox拖拽功能实现

    * 在DragDrop事件中,需要将拖拽的项目添加到目标ListBox控件中,并将其从源ListBox控件中删除。 * 在DragOver事件中,需要判断拖拽的项目是否可以添加到目标ListBox控件中,以避免出现异常情况。 通过实现ListBox...

    C#控件数据拖放操作

    在C#编程中,数据拖放(Drag and Drop)功能是一项常用的技术,它允许用户通过鼠标将数据从一个位置拖放到另一个位置。在本主题中,我们将深入探讨如何实现C#控件之间的数据拖放操作,以及如何在控件内部进行此类...

    Winform中实现拖拽到ListView中获取文件类型代码

    在`DragDrop`事件的处理函数中,我们通过`GetData`方法获取拖放的数据,这里我们期望的数据格式是`DataFormats.FileDrop`,这会返回一个包含所有拖放文件路径的字符串数组。接着,我们遍历这个数组,对每个文件调用`...

    C#drop拖放功能代码示例

    在C#编程中,拖放(Drag and Drop)功能是一种常见的用户交互方式,它允许用户通过鼠标将一个对象从一处“拖动”到另一处“放下”,常用于文件管理器、桌面图标、以及各种应用程序中,如DevExpress的控件。...

    c# 执行拖放操作

    在C#编程中,拖放(Drag and Drop)操作是一种常见的用户交互功能,它允许用户通过鼠标将一个对象从一处“拖动”到另一处“放下”。在Windows应用程序开发,尤其是使用Windows Forms或WPF平台时,拖放功能极大地提高...

    用C#实现在ListBox中拖动排序

    在C#中,拖放(Drag and Drop)功能可以极大地增强用户界面的交互性,使得用户可以通过简单的鼠标操作来移动或排序元素。本示例主要介绍如何实现一个ListBox控件内的元素通过鼠标拖动进行排序的功能。ListBox是...

    listbox之间拖拽,listbox内元素拖拽排序

    3. 更新排序:在`DragDrop`事件中,根据拖放的位置更新源`ListBox`和目标`ListBox`的`Items`集合,或直接更新数据源。 4. 错误处理和边界情况:考虑拖放过程中可能出现的异常,如拖放超出边界、尝试排序非可排序的`...

    listbox拖动至另一个listbox

    综上所述,通过C# WinForm,我们可以利用Listbox的AllowDrop属性、DragEnter、DragDrop、MouseDown和MouseUp事件,实现Listbox控件之间的拖放功能。这不仅提高了用户交互性,还增强了应用的功能性和灵活性。在实际...

    全面掌握C#中的拖放操作

    在C#编程中,拖放(Drag and Drop)操作是一种常用的功能,特别是在桌面应用程序中,它使得用户可以通过...在.NET框架的支持下,C#提供了丰富的API来简化这一过程,让开发者能够更专注于功能的实现,而不是底层的细节。

    c#带拖放功能的mp3播放器

    在`DragDrop`事件中,我们从数据中提取文件路径,遍历所有文件,如果文件是MP3格式,就将其赋值给`MediaPlayer.URL`,从而开始播放。 ### 支持鼠标单击 1. **添加按钮控件**:在表单上添加一个`Button`控件,作为...

    c#中实现文件拖放打开的方法

    C#实现文件拖放并打开文件 需要知道的ListBox的两个事件:当您在控件的边界内拖动对象时,便会发生 DragEnter 事件;该事件用于确 定当前拖动的对象是不是您要放到控件上的对象。 在将一个或多个文件拖到控件上时,...

    gong-wpf-dragdrop:GongSolutions.WPF.DragDrop库是WPF的拖放框架

    GongSolutions.WPF.DragDrop 一种易于使用的WPF拖放框架。 支持.NET Framework 4.5+和.NET Core 3(3.0和3.1) 产品特点 与MVVM一起使用:拖放的逻辑可以放在ViewModel中。 无需在代码背后放置任何代码,而是将...

    DragDropListBox_demo.zip

    在本文中,我们将深入探讨如何在C# WinForm应用程序中实现拖放(DragDrop)功能,特别是针对ListBox控件。这个示例项目"DragDropListBox_demo.zip"包含了一个使用C#编写的源代码,适用于想要学习如何在WinForm中添加...

    listbox的一些基本应用

    6. **拖放操作**:在Windows Forms中,可以启用ListBox的AllowDrop属性,并处理DragEnter和DragDrop事件来实现拖放功能。在DragDrop事件中,可以从e.Data获取拖动的数据,然后添加到目标ListBox的Items中。 在实际...

    俩个ListBox互相拖拽

    在C#或VB.NET等.NET Framework支持的语言中,可以方便地在代码中创建和操作ListBox。 实现两个ListBox之间的拖放功能,主要涉及以下几个关键知识点: 1. **启用拖放功能**:首先,我们必须开启ListBox的AllowDrop...

Global site tag (gtag.js) - Google Analytics