2009-03-23 4 views
7

Voglio rendere modificabili gli elementi del mio RadGrid al caricamento della pagina. Ho provato entrambi i metodi qui http://www.telerik.com/help/aspnet/grid/grddefaulteditmodeforgriditemsoninitialload.html ma nessuno dei due ha alcun effetto.TelGreco RadGrid - Come faccio a impostare la modalità di modifica predefinita?

Il secondo metodo, ad esempio, illustrato di seguito in cui la proprietà Edit è impostata sull'evento ItemCreated, determina la modalità di modifica impostata su true (verificata dal debugger) ma non ha alcun effetto sui risultati quando viene visualizzata la pagina.

Qualcuno ha qualche idea su cosa sto facendo male?

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

possibile duplicato di [Come impostare Telerik RadGrid su E modalità dit per impostazione predefinita? (ASP.NET)] (http://stackoverflow.com/questions/4379448/how-do-i-set-telerik-radgrid-to-edit-mode-by-default-asp-net) –

+0

Il collegamento fornito in la domanda non funziona - va a quello che sembra una guida per i radgrids, ma non mostra alcun contenuto, solo uno spazio bianco vuoto, dove le parole andrebbero. –

risposta

8

Questo funziona:

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

Questo funziona anche:

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

il codice qui sotto può essere utilizzato se si desidera fare come descritto sopra, ma per tabelle figlio:

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

ho sostituito il collegamento con il codice pertinente. – RoastBeast