winform窗口打开后文本框的默认焦点设置

 

winform窗口打开后文本框的默认焦点设置,进入窗口后默认聚焦到某个文本框,两种方法:

①设置tabindex

把该文本框属性里的tabIndex设为0,焦点就默认在这个文本框里了。

②Winform的Activated事件

在Form的Activated事件中添加textBox1.Focus(), 即可获得焦点。

private void Form1_Activated(object sender, EventArgs e) 

    textBox1.Focus(); 

}

TextBox是可以获得焦点的. 有几个前提:

1. TextBox所属的窗体(Form)在可操作(Active)状态. 即用户选中了Form.
2. TextBox的Enable属性,Visiable属性为True.

刚开始时原以为在Form的Load事件中添加textBox1.Focus(),测试失败

private void Form1_Load(object sender, EventArgs e) 

    textBox1.Focus(); 

}

因为在窗体加载时调用Focus()函数时, TextBox还未能成功的被显示到界面上。所以导致了失败。

 

本文来自: IT知道网(http://www.itwis.com) 详细出处参考:http://www.itwis.com/html/net/winform/20110419/10211.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用事件来实现该功能。具体实现步骤如下: 1. 在窗体上添加一个公共变量,用于存储当前获得焦点文本框。 2. 在窗体的 Load 事件中,为所有文本框的 Enter 和 Leave 事件绑定同一个处理方法。例如: ```csharp private void Form1_Load(object sender, EventArgs e) { foreach (Control control in this.Controls) { if (control is TextBox) { control.Enter += new EventHandler(textBox_Enter); control.Leave += new EventHandler(textBox_Leave); } } } ``` 3. 编写处理方法,在该方法中设置当前获得焦点文本框的边框颜色为红色,其他文本框的边框颜色为默认颜色。例如: ```csharp private void textBox_Enter(object sender, EventArgs e) { if (sender is TextBox) { TextBox textBox = (TextBox)sender; textBox.BorderStyle = BorderStyle.FixedSingle; textBox.BorderColor = Color.Red; this.currentTextBox = textBox; } } private void textBox_Leave(object sender, EventArgs e) { if (sender is TextBox) { TextBox textBox = (TextBox)sender; textBox.BorderStyle = BorderStyle.FixedSingle; textBox.BorderColor = SystemColors.ActiveBorder; this.currentTextBox = null; } } ``` 在这里,currentTextBox 是在第一步中定义的公共变量,用于存储当前获得焦点文本框。在 Enter 事件中,将当前获得焦点文本框的边框颜色设置为红色,并将其赋值给 currentTextBox 变量;在 Leave 事件中,将当前文本框的边框颜色设置默认颜色,并将 currentTextBox 变量置为 null。 通过以上步骤,就可以实现当前焦点文本框边框变为红色焦点移走后恢复正常的功能了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值