查找基于字符串的文本框并更改其文本

时间:2012-02-16 13:32:40

标签: c# xaml

我是在C#中完成的 -

 foreach (Control ctl in this.groupBox3.Controls)
        {
            if ((ctl is Textbox) && (ctl.Name.Substring(0, 1) != "l"))
            {
                Textbox tmp= (Textbox)ctl;
                tmp.text = "whatever";

我试图在WPF中做类似的事情,但这次我想找到一个基于字符串的文本框。

所以我试过

TextBox temp = (TextBox).Findcontrol("txtboxNumbers");

但它抱怨“(文本框)”是一个类型,但它像变量一样使用,它无法找到Findcontrol方法:'(

2 个答案:

答案 0 :(得分:3)

Ofcource你不能。这样做

(TextBox).Findcontrol("txtboxNumbers");

您尝试在Findcontrol上调用方法Type。而是尝试(在窗口或控制* .cs文件中):

TextBox oTextBox = FindName("txtboxNumbers") as TextBox;

答案 1 :(得分:1)

您可以使用this.FindControl找到控件:

    TextBox txt = this.FindControl("txtboxNumbers") as TextBox;

    // check if the control was found
    if(txt != null)
    {
       txt.Text = "whatever you want";
    }