Gokul
Gokul

Reputation: 105

How to fetch data from dynamically created textboxes (windows application)

I have used the below code to dynamically create textboxes by giving the total number of textboxes initially. After i enter values to these textboxes, how can i fetch the values from it. Like if i give count as 3, 3 textboxes will be created. Now, i enter data to each textbox. How can i read the values i entered into these texboxes.

int a = 1;
    public Form1()
    {
        InitializeComponent();
    }

public System.Windows.Forms.TextBox AddNewTextBox()
{
        System.Windows.Forms.TextBox txt = new System.Windows.Forms.TextBox();
        this.Controls.Add(txt);
        txt.Top = a * 25;
        txt.Left = 100;
        txt.Name = "txt" + this.a.ToString();
        txt.Text = "TextBox " + this.a.ToString();
        a = a + 1;
        return txt;
}



 private void button1_Click(object sender, EventArgs e)
    {
        int i;
        int count = Int16.Parse(counttxt.Text.ToString());
        for (i = 1; i <= count; i++)
        {
            AddNewTextBox();
        }
    }

Upvotes: 1

Views: 3862

Answers (2)

Abe Hendlish
Abe Hendlish

Reputation: 727

string allTextBoxValues = "";
foreach (Control childc in Controls) {
    if (childc is TextBox && childc.Name.Contains("txt"))
        allTextBoxValues += ((TextBox)childc).Text + ",";
}

Upvotes: 1

Parimal Raj
Parimal Raj

Reputation: 20565

Hold a reference to the dynamically generated TextBox in a variable of type array or list.

Beside that if u want the value from TextBox that was named txt1

string value = this.Controls["txt1"].Text

Upvotes: 2

Related Questions