需要基本指导.C#ASP.Net隐藏编辑RadGridView

本文关键字:Net 隐藏 编辑 RadGridView C#ASP | 更新日期: 2023-09-27 18:26:42

我试图隐藏Telerik RadGrid Edit列,直到用户单击用户想要编辑的行。单击事件后,我需要将"编辑超链接"列设置为Visible="true"。我希望默认情况下将列设置为Visible="false",然后在我的.cs页面中添加一个点击事件来更改可见性属性,但我不知道如何针对编辑列。。。这是我的.aspx页面代码。

<telerik:RadGrid ID="RG_POI" runat="server" OnPreRender="RG_POI_PreRender" OnItemDataBound="RG_POI_ItemDataBound" >
    <MasterTableView EditMode="InPlace" >
        <Columns>
            <telerik:GridEditCommandColumn Visible="false"/>
        </Columns>
        <EditFormSettings>
            <EditColumn FilterControlAltText="Filter EditCommandColumn1 column" UniqueName="EditCommandColumn1">
            </EditColumn>
        </EditFormSettings>
    </MasterTableView>

需要基本指导.C#ASP.Net隐藏编辑RadGridView

您可以通过C#或JavaScript实现这一点。如果您使用C#,您可以从下面的网格定义中删除OnRowSelected="gridSelected";如果使用JavaScript,则删除OnSelectedIndexChanged="rgTest_SelectedIndexChanged":

ASPX:

<telerik:RadGrid ID="RG_POI" ... OnSelectedIndexChanged="rgTest_SelectedIndexChanged">
    <ClientSettings ... >
        <ClientEvents OnGridCreated="gridCreated" OnRowSelected="gridSelected" />
    </ClientSettings>
    <MasterTableView ... >
        <Columns>
            <telerik:GridEditCommandColumn UniqueName="Edit" />
            ...

选项1)C#:

protected void rgTest_SelectedIndexChanged(object sender, EventArgs e)
{
    RG_POI.Columns[1].Visible = true;
}

选项2)JavaScript:

function gridCreated(menu, args) {
    var radGrid = $find('RG_POI');
    var table = radGrid.get_masterTableView();
    table.shideColumn(1);
}
function gridSelected(menu, args) {
    var radGrid = $find('RG_POI');
    var table = radGrid.get_masterTableView();
    table.showColumn(1);
}