将文件粘贴到WinForms RichTextBox
时,文件将显示为默认文件类型图标以及粘贴文件的名称。
但是:这仅适用于某些文件类型,例如jpg和msg。
对于其他文件类型,例如pdf和doc,将显示文件类型而不是名称:
我验证了pdf文件的Name
属性设置正确,并尝试在.NET源代码中找到文本设置的位置,但我无法超越调用本机SendMessage
方法
问题:如何更改RichTextBox
的行为,以便始终显示名称?
如何重现:
1.创建一个新的Form
2.向其添加RichTextBox
3.将EnableAutoDragDrop
设置为true
(但调用.Paste()
时也会出现问题)
4.将文件从资源管理器拖到RichTextBox
可以使用以下代码缩短步骤1-3:
using System.Windows.Forms;
public class RTBForm : Form
{
public RTBForm()
{
RichTextBox rtb = new RichTextBox();
rtb.Dock = DockStyle.Fill;
rtb.EnableAutoDragDrop = true;
Controls.Add(rtb);
}
}