我正在寻找在我的 Windows 窗体应用程序上自定义富文本框控件。RichTextbox 将用于输入文本数据,一旦完成,将通过 SMS 文本消息发送。
要求是文本不能有任何换行符,因为一些旧手机不能正确显示信息并且会丢失格式。
我需要做的是在粘贴到 RTB 之前捕获剪贴板数据并自定义其格式,例如删除换行符。
我在这里找到了一个示例,该示例在一定程度上可以正常工作,但无法粘贴到其他控件中:-
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if((keyData == (Keys.Control | Keys.V)))
{
IDataObject iData = Clipboard.GetDataObject();
if (iData.GetDataPresent(DataFormats.Text))
{
string contents = Clipboard.GetText().Replace("\r\n", " ");
Clipboard.SetData(DataFormats.Text, contents);
richTextBox1.Paste();
}
return true;
}
else
{
return base.ProcessCmdKey(ref msg, keyData);
}
}
请问有谁知道我应该怎么做?