2010-10-25 6 views
0

Je dois pouvoir définir le texte d'une zone de texte (qui se trouve à l'intérieur d'une ligne gridview) sur une certaine chaîne en cours d'exécution. J'ai déjà utilisé FindControl, mais je n'arrive pas à comprendre la syntaxe pour définir la valeur de la zone de texte au lieu de l'obtenir. Voici ce que j'ai, qui ne compile pas:_Formation du texte de la zone de texte à l'aide de FindControl

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

Je serais reconnaissant pour toute aide

Merci

Répondre

2

Est-ce que ce travail?

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

EDIT: En fait, j'aime ceci est mieux que mon post orginal:

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

if(txtPath != null) 
    txtPath.Text = dataMap.GetString("targetPath"); 
0

La raison pour laquelle il ne compile pas est parce qu'il semble que vous avez un support de fermeture supplémentaire sur la fin de la fonction GetString().

Essayez ceci:

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

Il est la meilleure pratique pour vérifier que la zone de texte n'est pas nul, mais pas obligatoire.

Questions connexes