2011-06-01 4 views
2

Quelqu'un peut-il me dire comment récupérer la zone de texte dans un gridview dans asp.net C#? J'ai un tas de données affichées dans un gridview et je veux qu'il soit éditable. J'ai ajouté un champ de commande d'édition et il me donne ce lien d'édition. Lorsque j'appuie sur ce lien, une zone de texte apparaît, mais comment puis-je obtenir la référence de cette zone de texte pour pouvoir récupérer tout ce qui se trouve dans la zone de texte et la modifier avant d'appeler le gestionnaire de mise à jour des lignes?ASP.NET Modifier la zone de texte de Gridview

+0

ne pas oublier de marquer réponse comme accepter si ça marche pour vous –

Répondre

1

Faire usage de FindControl méthode pour trouver la zone de texte que vous voulez ......

dans votre événement rowedit de gridview est

void AuthorsGridView_RowUpdating (Object sender, GridViewUpdateEventArgs e) 
    { 
    // The GridView control does not automatically extract updated values 
    // from TemplateField column fields. These values must be added manually 
    // to the NewValues dictionary. 

    // Get the GridViewRow object that represents the row being edited 
    // from the Rows collection of the GridView control. 
    int index = AuthorsGridView.EditIndex; 
    GridViewRow row = AuthorsGridView.Rows[index]; 

    // Get the controls that contain the updated values. In this 
    // example, the updated values are contained in the TextBox 
    // controls declared in the edit item templates of each TemplateField 
    // column fields in the GridView control. 
    TextBox lastName = (TextBox)row.FindControl("LastNameTextBox"); 
    TextBox firstName = (TextBox)row.FindControl("FirstNameTextBox"); 


    } 
0

Vous pouvez accéder à un élément dans un gridview en connaissant la ligne qu'il réside dans RowIndex et le nom élément "text_textbox"

TextBox text = ((TextBox)contacts.Rows[RowIndex].FindControl("text_textbox")).Text; 
Questions connexes