7

我想让我的 RadGrid 的项目在页面加载时可编辑。我在这里尝试了这两种方法http://www.telerik.com/help/aspnet/grid/grddefaulteditmodeforgriditemsoninitialload.html 但都没有任何效果。

例如第二种方法,如下所示,在 ItemCreated 事件上设置了 Edit 属性,导致 Edit 模式设置为 true(由调试器验证),但它对显示页面时的结果没有影响。

有人知道我做错了什么吗?

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

3 回答 3

8

这有效:

for (int i = 0; i < RadGrid1.PageSize; i++)
{
    RadGrid1.EditIndexes.Add(i);
    RadGrid1.Rebind();
}
于 2009-03-24T11:25:35.740 回答
7

这也有效:

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
    e.Item.Edit = true;
}
于 2009-06-18T18:21:57.377 回答
1

如果您想按照上述方式进行操作,但对于子表,可以使用下面的代码:

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();  
}  
于 2013-03-27T03:29:20.573 回答