【WPF】textbox ctrl+enter回车 enter触发button的click事件

本文介绍了如何在WPF应用中实现TextBox控件的Ctrl+Enter键组合用于插入换行,而Enter键则触发Button的点击事件。通过监听KeyDown事件,根据按键组合来决定执行不同的操作,实现类似微信发送消息的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【WPF】textbox ctrl+enter回车 enter触发button的click事件

前言

第一次写csdn博客,就记录一下一个小功能的实现吧,最近在做和微信相关的一个插件,其中有一块是仿照微信的发送功能,即在textbox中编辑文本时,按下enter键直接发送,按下ctrl+enter触发回车。平常都没怎么注意的操作逻辑自己实现的时候还仔细思考了一下才做出来。

界面

非常朴素的界面

实现思路

捕捉textbox的keydown事件

按下ctrl+enter
提取光标当前位置
(不能直接使用textbox1.text+=Environment.NewLine。这只适用刚好在文本最后按下回车)
提取textbox的text,在光标位置索引处插入回车字符
(获取当前的光标位置就是为了直到回车到底插在哪里)
将新的text返回给textbox
(这个步骤会导致光标回到textbox的起始位置)
更新光标的位置
(应当是按回车前的光标右移一位)

按下enter
直接触发指定button的click事件

代码

  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值