很久不用gridview了 ,用的时候遇到这样的一个问题 ,有的列需要显示 ,有的不需要 ,则毫不犹豫的设定属性Visible=“false”,但是设定完之后 ,在后台取值发现是取不到的 。如果在RowCommand方法中 ,想取到这一列的值 ,查了查网上的解决方法 ,我能实现的是两种方式 ,一种就是在Visible之前就要得到这个值 ,当然这个方法在我的程序中不试用,因为我都是在前台设定的 。所以我用了第二种方法 ,就是用样式来控制。不用设定Visible属性 ,而是直接定义如下
<asp:BoundField HeaderText="嘉宾ID" DataField="UserID" ItemStyle-HorizontalAlign="Center"> <ItemStyle HorizontalAlign="Center"></ItemStyle> <FooterStyle CssClass="hidden" /> <HeaderStyle CssClass="hidden" /> <ItemStyle CssClass="hidden" /> </asp:BoundField>
这个时候,在后台是可以正常取值的 ,同时也不显示这一列。