从RadGrid中删除“编辑”,“更新”和“取消”链接

时间:2014-09-29 13:44:44

标签: c# asp.net telerik radgrid rad-controls

我正在尝试删除默认情况下Telerik RadGrid中显示的链接。在尝试删除编辑链接之前,这是网格的样子:

before I try to remove the edit link

我找到了这段代码,用于删除编辑链接:

if (!IsPostBack)
            {
                foreach (GridItem item in RGV_POI.MasterTableView.Items)
                {
                    if (item is GridEditableItem)
                    {
                        GridEditableItem editableItem = item as GridDataItem;
                        editableItem.Edit = true;


                    }
                }
                RGV_POI.Rebind();
            }

这就是网格对代码的看法:

how to grid looks after I try the code

编辑链接仍显示在第一个项目上。有没有办法删除RadGrid中每个项目的编辑,更新和取消链接?我希望能够使用按钮单击事件删除/禁用链接。然后,可以使用按钮单击事件添加/启用链接。

3 个答案:

答案 0 :(得分:0)

我不知道Telerik RadGrid控件,但是肯定控件应该继承asp:GridView。您可以在RowDataBound事件中显示链接。在这里你可以做到这一点。

在网格视图上添加OnItemDataBound="Grid_ItemDataBound"

在背后的代码中:

    protected void Grid_ItemDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Item.DataItem == null)
            return;

        //cell of all the link button edit/update etc.
        TableCell cell = e.Item.Cells[//index of the column];

        foreach(Control c in cell.Controls)
        {
            c.Visible = false;
        }  
    }

您应该以某种方式检查取消,编辑,更新按钮的ID。您可能应该提供有关aspx中控件的更多信息。

修改

使用其文档中存在的OnItemDataBound事件:http://www.telerik.com/help/aspnet-ajax/events_t_telerik_web_ui_radgrid.html

答案 1 :(得分:0)

RadGrid中的编辑链接按钮实际上是一个列本身,特别是GridEditCommandColumn。为了在单击按钮时显示/隐藏它,您必须在click事件处理程序中以编程方式重建所有列,包括或根据需要排除GridEditCommandColumn。当以声明方式创建网格的其余部分时,无法以编程方式添加或删除单个列。如果我们能够在应用程序中看到更多如何声明和构建网格,那将非常有用。

Creating a RadGrid Programatically

但是,可以更改GridEditCommandColumn.Display属性。如果您可以获取列本身的句柄,而不是单个单元格,则可以根据需要在按钮单击事件中对其进行调整。

答案 2 :(得分:0)

如果您不希望项目可编辑,则应删除GridEditCommandColumn。另一种选择是通过其Visible / Display属性更改其在服务器上的可见性。您可以使用网格的GetColumnSafe(columnName)方法获取neded引用:http://www.telerik.com/help/aspnet-ajax/grid-using-getitems-getcolumn-methods.html

要摆脱更新/取消按钮,您可以使用自定义模板,但如果您的网格不可编辑,我不明白为什么您需要这样做:http://demos.telerik.com/aspnet-ajax/grid/examples/data-editing/form-template-update/defaultcs.aspx