|
|
1
8
我在所有关于拖放的建议中遗漏的是使文本插入符号可见。最终,我发现您只需将焦点设置到控件中!因此textBox1.DragOver事件处理程序的最终代码如下所示。我已经包含了上一个答案中的GetCaretIndexFromPoint函数:
|
|
|
2
3
我想你应该看看如何处理textBox1_DragOver事件。将DragOver事件参数中包含的鼠标位置传递给“textBox1.GetCharIndexFromPosition()”
这是您的文档 GetCharIndexFromPosition |
|
|
3
3
这实际上是非常令人恼火的,因为GetCharIndexFromPosition(显然)缺少一个插入符号位置,因为有一个额外的插入符号位置比有个字符多(末尾有一个额外的)。我用它在DragOver上设置SelectionStart,在DragDrop上设置Insert。
|
|
|
4
2
|
|
|
5
1
要模拟常用工具(如记事本)的行为,GetCaretIndexFromPoint()函数必须同时检查X和Y坐标。
感谢用户468106给出的精彩回答! |