如何在 RichTextBox WinForms 中阻止功能键的事件 (ENTER)
How to block function key's event (ENTER) in RichTextBox WinForms
在我的 Wondows 表单中,我有一个 RichTextBox(多行)元素作为消息 window。当用户按下 "Enter" 时,它会发送带有来自此元素的文本的字符串消息。但它也会在按下 Enter 时换行。
如何在 RichTextBox 中按下功能键 Enter 时阻止 "new line" 默认事件?当用户按 Enter 时,我只需要 1 个操作 "send message",而不是 2 个操作。
但是! 如果用户按 SHIFT+ENTER,他仍然可以默认换行。就是这个意思。
但我找不到地方或命令如何用新行阻止 Enter 的默认操作我已经搜索了很长时间。你们能帮帮我吗?
您可以订阅 KeyDown 事件,适当地处理它,然后让 RichTextbox 控件知道它已被处理:
private void YourRichTextBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//Do what you have to do
e.Handled = true;
}
}
在我的 Wondows 表单中,我有一个 RichTextBox(多行)元素作为消息 window。当用户按下 "Enter" 时,它会发送带有来自此元素的文本的字符串消息。但它也会在按下 Enter 时换行。 如何在 RichTextBox 中按下功能键 Enter 时阻止 "new line" 默认事件?当用户按 Enter 时,我只需要 1 个操作 "send message",而不是 2 个操作。 但是! 如果用户按 SHIFT+ENTER,他仍然可以默认换行。就是这个意思。
但我找不到地方或命令如何用新行阻止 Enter 的默认操作我已经搜索了很长时间。你们能帮帮我吗?
您可以订阅 KeyDown 事件,适当地处理它,然后让 RichTextbox 控件知道它已被处理:
private void YourRichTextBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//Do what you have to do
e.Handled = true;
}
}