_Setting_ текстовое поле текста с помощью FindControl - PullRequest
0 голосов
/ 26 октября 2010

Мне нужно иметь возможность установить текстовое поле (которое находится внутри строки gridview) на определенную строку во время выполнения. Я использовал FindControl раньше, но не могу понять синтаксис для фактической установки значения текстового поля, а не просто получения Вот что у меня есть, которое не компилируется:

((TextBox)e.Row.FindControl("txtPath")).Text = dataMap.GetString("targetPath"));

Буду благодарен за любую помощь

Спасибо

Ответы [ 2 ]

2 голосов
/ 26 октября 2010

Будет ли это работать?

(e.Row.FindControl("txtPath") as TextBox).Text = dataMap.GetString("targetPath");

РЕДАКТИРОВАТЬ: На самом деле мне нравится это лучше, чем мой оригинальный пост:

TextBox txtPath = (TextBox)e.Row.FindControl("txtPath");

if(txtPath != null) 
    txtPath.Text = dataMap.GetString("targetPath");
0 голосов
/ 27 октября 2010

Причина, по которой он не компилируется, заключается в том, что, похоже, у вас есть дополнительная закрывающая скобка в конце функции GetString ().

Попробуйте это:

((TextBox)e.Row.FindControl("txtPath")).Text = dataMap.GetString("targetPath"); 

Рекомендуется проверить, что TextBox не равен нулю, но не является обязательным.

...