返回首页
当前位置: 主页 > 编程语言 > C#教程 >

C# Winform设置焦点focus(textbox)

时间:2017-12-11 22:44来源:电脑教程学习网 www.etwiki.cn 编辑:admin

有的时候,Winform 中的 textbox 会自动聚焦;有的时候,textbox 又不会;为什么会出现这种情况呢?这与 textbox 聚焦的方式之一相关,当 textbox 被第一个拉到 Form 窗体时,textbox 会自动聚焦,反之不会,具体原因将在下文介绍。

  C# Winform设置焦点有两种方法,一种是用 Focus() 方法实现,另一种是通过控件索引实现,下面就分别介绍这两种方法具体实现步骤或代码。

 

  一、C# Winform设置焦点方法一:Focus 方法

  1、使用 textbox 的 Focus() 方法,需要在窗体的的 Activated 事件中写代码。首先为窗体(Form1)添加 Activated 事件,展开右边的“属性”窗口,如图1所示:

C# Winform设置焦点

图1

  选择“事件”图标,在 Activated 右边输入 Form1_Activated,单击任意处则打开窗体后台代码文件。

 

  2、在 Form1_Activated 事件中添加如下代码:

  private void Form1_Activated(object sender, EventArgs e)   {

    textBox1.Focus();//textbox 聚焦

  }

   这样,打开窗体 Form1,textbox焦点就会自动出现。

 

 

  二、C# Winform设置焦点方法二:设置 tabindex 索引

  如果把 textbox 的 tabindex 设置为0,则该 textbox 会自动聚焦,这就是我们有时并未设置 textbox 聚焦,却会自动出现光标的原因。一般来说,textbox 被第一个拉到窗体中,则它的 tabindex 就是0。设置 tabindex 为 0 的方法如下:

  1、选中 textbox,展开右边的“属性”窗口,找到 TabIndex,如图2所示:

textbox焦点

图2

     2、在 TabIndex 右边输入 0,运行程序,textbox焦点就会出现。

 

 

  三、textbox 设置焦点注意问题

  1、textbox 必须显示(即 Visible 为 True)与启用(即 Enabled 为 True),焦点(光标)才会出现。

  2、用 textbox.Focus()方法设置焦点,不能把代码写到窗体载入事件(即 Form1_Load),否则无效。

------分隔线----------------------------
标签(Tag):c#
------分隔线----------------------------
推荐内容
猜你感兴趣