接受拖拽的richtextbox

本文介绍了一个自定义的RichTextBox类,该类扩展了.NET Framework中的RichTextBox控件,增加了拖放文件的功能。当用户将文件拖放到控件上时,它可以捕获并处理这些文件,为用户提供更多的交互方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public class zlcRichtextBox : RichTextBox
 {

public zlcRichtextBox()
  {}

public delegate void mDrag(object e);
  public event mDrag DragDrop;

/// <summary>
  /// 拖拽
  /// </summary>
  /// <param name="drgevent"></param>
  protected override void OnDragDrop(DragEventArgs e)
  {
   base.OnDragDrop (e);
   if(this.DragDrop != null)
   {
    if (e.Data.GetDataPresent(DataFormats.FileDrop))
    {
     System.Array file = (System.Array)e.Data.GetData(DataFormats.FileDrop);
     this.DragDrop(file.GetValue(0));
    }
   }
  }

  protected override void OnDragEnter(DragEventArgs e)
  {
   if (e.Data.GetDataPresent(DataFormats.FileDrop))
     e.Effect = DragDropEffects.Move;
    else
    e.Effect = DragDropEffects.None;
   base.OnDragEnter (e);
  }

}

如:

zlcRichtextBox rich = new zlcRichtextBox ()

rich.DragDrop += new zlcRichtextBox.mDrag(richTextBox2_DragDrop);

 

private void richTextBox2_DragDrop(object e)
  {
  string FileName = e.ToString();
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值