想要隐藏掉gridview中的某一列,但是还想要使用该列数据解决办法。

时间:2020-12-10 14:48:55

试过visable=“false”  只能隐藏掉数据,但是访问的时候变成“”了。即无法使用。后来改变使用了模版列可以达到想要的效果。可以隐藏,可以访问。

aspx页面:

 <asp:TemplateField Visible="false">
                    <ItemTemplate>
                        <asp:label ID="lbdefault" runat="server" Text='<%# Eval("defaultstate") %>' />
                    </ItemTemplate>
            </asp:TemplateField>

aspx.cs页面:

   if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    switch (((Label)e.Row.FindControl("lbdefault")).Text)
                    {
                        case "非默认":
                            lb2.Text = "设为默认";
                    lb2.Attributes.Add("onclick", "javascript:return confirm('你确认要将编号为:\"" + e.Row.Cells[1].Text + "\"的数据设默认吗?')");
                            break;
                        case "默认":
                          lb2.Text = "取消默认";
                    lb2.Attributes.Add("onclick", "javascript:return confirm('你确认要将编号为:\"" + e.Row.Cells[1].Text + "\"的数据取消默认吗?')");
                            break;

                    }
                }