请问c#的winform中最后一个文本框的回车等同于点击下个按钮,他们触发的事件是一样的,需要分别写代码吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问c#的winform中最后一个文本框的回车等同于点击下个按钮,他们触发的事件是一样的,需要分别写代码吗?相关的知识,希望对你有一定的参考价值。

如果不需要,该怎么实现?

问题没怎么看明白,按照我的理解是不是这个意思:
例如有一个登录窗体,上面在有一个文本框txtPassword,用于用户输入密码,还有一个按钮btnOK,用于用户输入用户名和密码后点击按钮登录系统,现在你已经把按钮事件写好了:
private void btnOK_Click(object sender, EventArgs e)

UserLogin(this.txtUserName.Text.Trim(),this.txtPassword.Text.Trim());
............ //根据输入的用户名和密码登录系统事件

现在你在实现在密码输入框按下回车键同样触发“根据输入的用户名和密码登录系统事件”,这时不需要再重写一次,只需要设置密码输入框的KeyDown事件:
private void txtPassword_KeyDown(object sender, KeyEventArgs e)

if (e.KeyCode == Keys.Enter)

this.btnOK_Click(sender, e);


不知道你问的是不是这个意思
参考技术A 你可以把执行触发事件的函数剥离出来,最后一个文本框的回车和某个按钮点击时调用这个函数
void commonFunc()

//执行代码

private void btnOK_Click(object sender, EventArgs e)

commonFunc();


private void txtPassword_KeyDown(object sender, KeyEventArgs e)

if (e.KeyCode == Keys.Enter)

commonFunc();

追问

谢谢,进过测试你的方法也可行,只是你的多一个步骤

参考技术B 肯定要分别写代码了啊 ,这是两个完全不同的触发器,虽然执行的动作都一样!

C# winform中richTextBox中自动滚至底部

richTextBox中的文本由另一个控件加入的时候,当自动出现滚动条时,文本不会自动向下滚动,文本还是定位在开始处,因此无法自动查看新加入的文本,而richTextBox又没有AutoScroll这个属性,请问如何实现下面描述的功能:当一richTextBox由另一richTextBox加入文本且自动出现滚动条时,自动向下滚动,以便查看新加入文本的内容~~~谢谢!!!
可以实现自动定位的文本尾,可是richTextBox1成了光标所在位置,我想要的是在richTextBox2中编辑并将编辑文本加入richTextBox1,但richTextBox2并不失去焦点,谢谢~~~

垂直滚动条始终在RichTextBox的底部
你需要设置HideSelection 为 false 并且用 AppendText来插入新数据
例如richTextBox.AppendText("内容");

让richTextBox2一直获取焦点
则在促发事件的时候
增加richTextBox2.Focus();
参考技术A //让文本框获取焦点
this.richTextBox.Focus();
//设置光标的位置到文本尾
this.richTextBox.Select(this.richTextBox.TextLength,0);
//滚动到控件光标处
this.richTextBox.ScrollToCaret();

以上是关于请问c#的winform中最后一个文本框的回车等同于点击下个按钮,他们触发的事件是一样的,需要分别写代码吗?的主要内容,如果未能解决你的问题,请参考以下文章

请问在c# winform中怎么将文本框中的数值保存到数据库中money类型的字段中???

C# 自动清除 Winform 文本框

一个关于winform(C#)的富文本框的问题,希望大家能帮帮我,下面我仔细描述下我的需求

如何在 C# Winforms 程序的文本框中突出显示文本?

winform制作回车效果

带有按钮、组合框和文本框的 C# WinForms (.NET Framework) DataGridView:使用按钮添加新行以添加组合框项时出错