You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

按下Enter触发BtnLogin点击时txtPassword内容丢失,如何阻止?

解决按下Enter触发登录按钮时密码框内容丢失的问题

你编写的登录表单代码在按下Enter时触发登录按钮,但密码框内容丢失,核心原因是没有阻止Enter键的默认系统行为。WinForms中TextBox控件按下Enter会执行默认的按键处理逻辑,这会干扰输入内容的保留。

只需在触发登录按钮后添加两行代码,取消该按键的默认动作:

private void txtPassword_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        BtnLogin.PerformClick();
        // 阻止系统处理该按键的默认行为,避免内容丢失
        e.Handled = true;
        e.SuppressKeyPress = true;
    }
}
  • e.Handled = true:告知系统该按键事件已被处理,无需继续传递
  • e.SuppressKeyPress = true:彻底阻止按键消息的后续传播,取消Enter键的默认动作

这样修改后,按下Enter触发登录按钮的同时,密码框的输入内容就会正常保留。

内容的提问来源于stack exchange,提问作者siriuseteor77

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:25:55