2009-09-04 6 views
0

J'ai un contrôle utilisateur qui contient une grille et trois boutons pour ajouter, modifier et supprimer. J'ai placé ce contrôle utilisateur sur une page asp.net. J'ai des événements OnClick pour ces boutons. Quand je clique sur ajouter et supprimer des boutons cela fonctionne bien mais quand je clique sur le bouton d'édition, l'événement onclick du bouton d'édition est déclenché mais la rangée dans la grille n'apparaît pas dans le mode d'édition, je dois cliquer deux fois. Je ne sais pas où est le gestionnaire d'événements onclick problème.Le pour le bouton d'édition est la suivante:La modification de ligne dans la grille ne fonctionne pas en premier clic

protected void btnEditBankAccount_Click(object sender, EventArgs e) 
     { 
      grdBankAccounts.EditIndex = grdBankAccounts.SelectedIndex; 
      grdBankAccounts.RowSelectingEnabled = false; 

     } 

Toute personne s'il vous plaît aider.

mon contrôle utilisateur a une méthode qui lie la grille à la source de données, il est comme suit

public void SetSupplierData(SupplierType Supplier) 
     { 
      if (Supplier != null) 
      { 
        ViewState["SupplierID"] = Supplier.SupplierId; 
        grdBankAccounts.DataSource = Supplier.BankAccounts; 
        grdBankAccounts.DataBind(); 
        Session["BankAccounts"] = Supplier.BankAccounts; 
     } 
     } 

la méthode SetSupplierData est appelée à partir de la page où j'ai mon contrôle utilisateur.

+0

merci beaucoup marc_s. mon problème est résolu –

Répondre

0

Afin d'obtenir cette « édition en place » dans les réseaux pour travailler, j'ai généralement aux données bind deux fois:

  • une fois dans la OnInit ou méthode OnLoad afin que les gestionnaires d'événements de clic de bouton ont les données disponibles pour travailler sur

  • dans la méthode OnPreRender nouveau pour afficher les nouvelles valeurs/nouvel état (édition ou non)

Marc

Questions connexes