Visual C# 2005在窗體加載時(shí)某控件取得焦點(diǎn)

2010-08-28 10:50:09來(lái)源:西部e網(wǎng)作者:

在此我們將說(shuō)明如何在窗體加載時(shí),讓某一個(gè)控件取得焦點(diǎn)(Focus)——即使該控件成為作用控件。我們將示范如何使用下列3種方式來(lái)完成此項(xiàng)操作。
  • 窗體的ActiveControl屬性能夠用來(lái)取得或設(shè)定窗體上的作用控件。因此,您只需將窗體的ActiveControl屬性設(shè)定成窗體上的某一個(gè)控件,該控件就會(huì)成為活動(dòng)控件。如圖8.1所示是程圖8.1使Text屬性為空字符串的TextBox控件成為作用控件序范例CH8_DemoForm001.cs的運(yùn)行畫面,它會(huì)在窗體加載后,將Text屬性為空字符串的TextBox控件設(shè)定成活動(dòng)控件(也就是取得焦點(diǎn))。程序代碼列示如下:

    \

    圖8.1使Text屬性為空字符串的TextBox控件

    privatevoid CH4_DemoForm054_Load(object sender, EventArgs e)

    {

    int nCount =this.Controls.Count;



    for (int i =0; i <= nCount -1; i++)

    {

    if (this.Controls[i] is System.Windows.Forms.TextBox)

    {

    // 找出 Text 屬性為空字符串的 TextBox 控件。if (this.Controls[i].Text =="")

    {

    // 使沒(méi)有任何文字的 TextBox

    // 控件成為作用控件。this.ActiveControl =this.Controls[i];



    // 跳離 For 循環(huán)。break;

    }

    }

    }

    }


    • 調(diào)用控件的Select方法即可啟動(dòng)該控件并使其取得焦點(diǎn)。程序范例CH8_DemoForm002.cs的功能與上一個(gè)程序范例CH8_DemoForm001cs完全相同,只不過(guò)它如下所示,改用Select方法來(lái)使控件取得焦點(diǎn):

      this.Controls[i].Select();

      • 調(diào)用控件的Focus方法即可使該控件取得焦點(diǎn)。不過(guò)由于我們是在窗體加載時(shí)要使控件取得焦點(diǎn),因此您必須先將窗體的Visible屬性設(shè)定成True。程序范例CH7_DemoForm003.cs的功能與前面兩個(gè)程序范例完全相同,只不過(guò)它如下所示,改用Focus方法來(lái)使控件取得焦點(diǎn):

        \this.Visible =true;
        \...
        \
        \
        this.Controls[i].Focus();
        \
        \...
        關(guān)鍵詞:VS.NET