c#标签不可拖动:
当我尝试将标签拖到富文本框中时,图标保持为拒绝。我的标签位于面板中,与富文本框分开。如何将标签中的文本复制到富文本框中?现在我得到了一个带线的圆,好像我没有将txtText.AllowDrop设置为true,但是我在表单加载时就这样做了c#标签不可拖动:,c#,winforms,drag-and-drop,C#,Winforms,Drag And Drop,当我尝试将标签拖到富文本框中时,图标保持为拒绝。我的标签位于面板中,与富文本框分开。如何将标签中的文本复制到富文本框中?现在我得到了一个带线的圆,好像我没有将txtText.AllowDrop设置为true,但是我在表单加载时就这样做了 谢谢好的,我发现RichTextBox没有标准的拖放实现。我有一个名为EnableAutoDragDrop的属性,只要将其设置为true,它就会自动处理所有事情。除此之外,您不需要为其注册任何事件: richTextBox1.EnableAutoDragDrop
谢谢好的,我发现
RichTextBox
没有标准的拖放实现。我有一个名为EnableAutoDragDrop
的属性,只要将其设置为true
,它就会自动处理所有事情。除此之外,您不需要为其注册任何事件:
richTextBox1.EnableAutoDragDrop = true; //Just this even without AllowDrop = true
//RichTextBox doesn't even have DragOver event exposed, we have to cast it to Control to expose the base DragOver event
((Control)richTextBox1).DragOver += (s, e) =>
{
e.Effect = DragDropEffects.Copy;
};
在不注册DragOver事件处理程序的情况下,在进行拖放操作时必须使用(按住/按)Control键。谢谢您的建议,但是用您的事件替换我的lblWord\u MouseDown事件不会产生任何变化。@AuntJamaima默认值
SetText(“”)
使用1个参数将文本设置为Unicode格式
,同时检查DragEnter
事件处理程序中的ANSI格式
。我更新了代码,现在应该可以工作了。我对您的更改在应用程序中的行为没有任何差异。我现在已经发布了全部代码。文本框是一个富文本框。我有一个非常类似的应用程序的不同版本,它似乎与常规文本框一起工作。这会有什么不同吗?@AuntJamaima好的,我更新了答案,这就是RichTextBox
的问题。谢谢。我在表单加载中添加了这个调用,虽然与常规文本框肯定有所不同,但它仍然有效。非常感谢。