Получение значений из динамических элементов управления в виде сетки - PullRequest
0 голосов
/ 16 сентября 2009

Я создаю Gridview с пользовательскими элементами управления (текстовые поля) в соответствии с пользовательским вводом во время выполнения. когда я пытаюсь получить доступ к данным в этих текстовых полях, это не происходит

Я запустил эту операцию с помощью кнопки, и код выглядит следующим образом:

для (int rowCount = 0; rowCount <= gvCapacity.Rows.Count; rowCount ++) { for (int i = 1; i <gvCapacity.Columns.Count; i ++) { if (i> rowCount) { if (! (gvCapacity.Columns [i] .HeaderText == "Route" && gvCapacity.Columns [i] .HeaderText == "Location" && gvCapacity.Columns [i] .HeaderText == "RouteLocationID")) { TextBox txtBox = gvCapacity.Rows [rowCount] .Cells [i] .FindControl ("txt" + gvCapacity.Columns [i] .HeaderText) как TextBox;
} } }

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

С уважением Гита

1 Ответ

1 голос
/ 16 сентября 2009

Если вы имеете в виду, что переменная texbox "txtbox" всегда равна нулю, это выглядит так, потому что вы спрашиваете, что заголовочный текст - это две разные вещи в вашем условном условии:

.. && gvCapacity.Columns[i].HeaderText == "Location" && gvCapacity.Columns[i].HeaderText == "RouteLocationID

которого никогда не будет ... кто-то предполагает. т.е. FindControl никогда не оценивается. Может быть, один из них && должен быть ||?

...