2009-03-23 11 views
7

Je veux que les éléments de mon RadGrid soient éditables au chargement de la page. J'ai essayé les deux méthodes ici http://www.telerik.com/help/aspnet/grid/grddefaulteditmodeforgriditemsoninitialload.html mais aucun d'entre eux n'a aucun effet. La méthode 2 par exemple, illustrée ci-dessous où la propriété Edit est définie sur l'événement ItemCreated, définit le mode Edit sur true (vérifié par le débogueur) mais n'a aucun effet sur les résultats lorsque la page est affichée.Telerik RadGrid - Comment est-ce que je par défaut pour éditer le mode?

Quelqu'un at-il une idée de ce que je fais de mal?

protected void RadGrid1_ItemCreated(object sender, Telerik.WebControls.GridItemEventArgs e) 
{ 
    if (!Page.IsPostBack && e.Item is GridEditableItem) 
    { 
     e.Item.Edit = true; 
    } 
} 
+0

duplication possible de [Comment régler Telerik RadGrid sur E dit mode par défaut? (ASP.NET)] (http://stackoverflow.com/questions/4379448/how-do-i-set-telerik-radgrid-to-edit-mode-by-default-asp-net) –

+0

Le lien fourni dans la question ne marche pas - elle va à ce qui ressemble à un guide pour radgrids, mais ne montre aucun contenu, juste un espace blanc vide, où les mots iraient. –

Répondre

8

Cela fonctionne:

for (int i = 0; i < RadGrid1.PageSize; i++) 
{ 
    RadGrid1.EditIndexes.Add(i); 
    RadGrid1.Rebind(); 
} 
7

Cela fonctionne aussi:

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    e.Item.Edit = true; 
} 
1

le code ci-dessous peut être utilisé si vous souhaitez faire comme décrit ci-dessus, mais pour les tables de l'enfant:

protected void RadGrid1_PreRender(object sender, EventArgs e) 
{ 
    foreach (GridDataItem item in RadGrid1.MasterTableView.Items) 
    { 
     if (item.HasChildItems) 
     { 
      GridTableView childTable = (GridTableView)item.ChildItem.NestedTableViews[0]; 


      foreach (GridDataItem childitem in childTable.Items) 
      { 

       //Check for the newly inserted row 
       //and set in edit mode 
       //childitem.Edit=true; 
      } 
     } 
    } 
    RadGrid1.MasterTableView.Rebind(); 
} 
+1

J'ai remplacé le lien par le code pertinent. – RoastBeast

Questions connexes