[ASP.NET]GridView要可以隱藏BoundField,又可以在Server端取到值

  • 26586
  • 0

摘要:[ASP.NET]GridView要可以隱藏BoundField,又可以在Server端取到值

<Columns>
<asp:BoundField DataField="CODE_ID" HeaderText="編號" SortExpression="CODE_ID" Visible=false  />
<asp:BoundField DataField="CODE_NAME" HeaderText="名稱" SortExpression="CODE_NAME" />
</Columns>

在Server端取值

this.MasterGridView.Rows[this.SelectedRowIndex].Cells[0].Text

本來應該是"1",後來就變成""

Google上有找到

http://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.framework.aspnet.datagridcontrol/2006-02/msg00031.html

後來有找到另外一種解法,用Css把Column隱藏掉

http://www.netomatix.com/development/GridViewHideColumn.aspx

<style type="text/css">
    .hiddencol
    
{
        display
:none;
    }
    .viscol
    
{
        display
:block;
    }
</style>

 

<Columns>
 <asp:BoundField DataField="CODE_ID" HeaderText="編號" SortExpression="CODE_ID"  ItemStyle-cssclass="hiddencol" HeaderStyle-CssClass="hiddencol"  />
 <asp:BoundField DataField="CODE_NAME" HeaderText="名稱" SortExpression="CODE_NAME" />
</Columns>

這樣就可以在Server端取到值,又可以達到隱藏key值的效果