0

我有一个页面,取决于用户是否经过身份验证,gridview 中的某些列不显示。在行数据绑定事件中,我需要根据标题文本确定需要应用格式的单元格的列号

我需要按照我在下面显示的内容做一些事情。

If User.Identity.IsAuthenticated Then
            Dim revColumn As Integer = row."Headercelltext find it"
            row.Cells(revColumn).Text = String.Format("{0:c0}", Convert.ToDouble(row.Cells(revColumn).Text))
        End If
4

1 回答 1

0

试试这个

对于基于隐藏列Role

 protected void Page_Load(object sender, EventArgs e)
    {
       GridView1.Columns[3].Visible = false;
    }

并用于格式化

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {

            if (Session["Role"] == "admin")
                btnVal.Enabled = false;
        }
    }

按列文本查找列索引

 private int GetColumnIndexByName(GridView grid, string name)
    {
        foreach (DataControlField col in grid.Columns)
        {
            if (col.HeaderText.ToLower().Trim() == name.ToLower().Trim())
            {
                return grid.Columns.IndexOf(col);
            }
        }

        return -1;
    }
于 2013-07-26T17:32:41.887 回答