получить значения из динамически добавленных текстовых полей asp.net c #

как предложено в заголовке, в котором я могу вставить, сколько текстовых полей я хочу добавить в заполнитель. я могу просто добавить текстовые поля, проблема в том, что я не могу получить значения, вставленные в эти динамически добавленные текстовые поля. вот мой код

Цель этого фрагмента кода - всякий раз, когда текстовое поле, в котором я могу ввести желаемое количество текстовых полей. он создает и добавляет их в заполнитель на моей странице.

public void txtExtra_TextChanged(object sender, EventArgs e)
{  
    for (a = 1; a <= int.Parse(txtExtra.Text); a++)
    {
         TextBox txt = new TextBox();
         txt.ID = "txtquestion" + a;
         pholder.Controls.Add(txt);
    }
}

это код кнопки, которая отправит и ответит. запишите значения, вставленные во все эти текстовые поля.

protected void btnConfirm_Click(object sender, EventArgs e)
{
     foreach (Control ctr in pholder.Controls)
     {
         if (ctr is TextBox)
         {        
              string value = ((TextBox)ctr).Text;
              Response.Write(value);  
         } 
     }
 }

Я искал в Интернете, и я получил ответы, что этот код в порядке, и он должен работать, но это не так. если вы, ребята, видите что-то не так или у вас есть предложения, которые могут решить мою проблему, я был бы очень признателен

Ответы на вопрос(3)

Ваш ответ на вопрос