【问题标题】:Set GridView first or specific row to be readonly将 GridView 第一行或特定行设置为只读
【发布时间】:2014-08-31 06:21:58
【问题描述】:

将 gridview 中的特定列设为只读非常简单。 但我只需要将第一行或选定的行设为只读。是否可以在不影响其他可编辑行的情况下实现这一点。

这是我当前的代码。 (样本)

   <Columns>                
        <asp:CommandField ShowEditButton="True" HeaderText="Edit" />
        <asp:BoundField DataField="Col1" ReadOnly="true" />
        <asp:BoundField DataField="Col2" ReadOnly="false" />
        <asp:BoundField DataField="Col3" ReadOnly="false" />

在行透视图中。第一列始终是只读的,其他两行是可编辑的。 我不希望编辑按钮出现在第一行。我希望第一行完全只读。如何做到这一点?

编辑:

如果上面很难实现,那么我很想知道如何将数据表中的第一行添加到gridview的页脚行(假设commandField不会向页脚添加编辑按钮......)

【问题讨论】:

    标签: c# asp.net gridview row commandfield


    【解决方案1】:

    要使第一行不可编辑,您可以使用 GridView 的RowDataBound 事件并隐藏 编辑 按钮

    首先将您的CommandField 转换为TemplateField 并在RowDataBound 事件中隐藏编辑按钮,

    试试类似的东西

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
    
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            if (e.Row.RowIndex == 0)
            {
                e.Row.FindControl("EditLinkButtonName").Visible = false;
            }
        }
    }
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-16
    • 1970-01-01
    • 1970-01-01
    • 2012-10-02
    • 2012-05-17
    • 2015-05-19
    • 1970-01-01
    • 2014-07-12
    相关资源
    最近更新 更多