Listview 和 RichTextBox 之间的拖放不起作用

Posted

技术标签:

【中文标题】Listview 和 RichTextBox 之间的拖放不起作用【英文标题】:Drag & Drop between Listview and RichTextBox doesn't work 【发布时间】:2014-08-02 15:33:33 【问题描述】:

我有一个包含 Listview 和 RichTextBox 的 windows 窗体。我想使用拖放在 RichTextBox 中写入 Listview 项目值。为此,我在 Listview ItemDrag() 事件处理程序中编写了这段代码:

listView1.DoDragDrop(((ListViewItem)e.Item).Text, DragDropEffects.Copy);

在 RichTextBox DragEnter() 事件处理程序中,我编写了以下代码:

private void  richTextBox1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)

    string data = e.Data.GetData(DataFormats.Text).ToString();
    richTextBox1.Text = data;

当我拖动 Listview 项目时,会调用 ItemDrag 事件,但是当我在文本框中释放鼠标按钮时,什么也没有发生。不调用 DragEnter 和 DragDop 事件。否则在拖放操作中,鼠标光标不显示“复制图标”。

我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

您是否在目标控件上将AllowDrop 属性设置为true? 您可以在 VS 的属性窗口中执行此操作

【讨论】:

完美!有用! AllowDrop 属性可通过代码获得,而不是在属性窗格中。我不知道为什么。谢谢!

以上是关于Listview 和 RichTextBox 之间的拖放不起作用的主要内容,如果未能解决你的问题,请参考以下文章

将richtextbox保存到文本文件(记事本)

如何从 RichTextBox 中的光标位置选择前一个字符

如何绑定listView中项的子属性?

WPF richtextbox问题

ListView 和 GridView 在选项卡切换之间被清除

android 有弹性的ScrollView 简单实现,与处理ScrollView和ListView,GridView之间的冲突