分页显示页使用GridView调整【显示隐藏】列没有即时更新的问题.docx


在分页显示的页面,使用gridview显示分页之后的数据,数据源是datatable,开始的时候有的列使用的绑定列,直接绑定datatable的列名,例如:<asp:BoundField DataField="zw" HeaderText ="职务" />

因为要用户可以调整显示的列,我就做了一个checkboxlist,用户可以选择显示的列,然后我在绑定数据gridview.databind()之后,根据checkboxlist的选中列,显示和隐藏gridview的列,选中列的序号先保存在一个hiddenfield.Value中。

刚开始用<asp:BoundField DataField="zw" HeaderText ="职务" />的时候,选中一个绑定列作为显示列,点击【确定】之后,虽然这个列被设置了this.gvStudent.Columns[i].Visible = true;,但是第一次点击【确定】,这个列的值是空白的,什么都没有,再次点击【确定】,这个列的值就出来了,目前还不知道原因。

后来经过仔细的调试,一个一个列的选择,看看那些列会出现这个问题。结果是,如果使用的是绑定列绑定数据,就会出现这个问题;如果使用的是模板列,就不会出现这个问题。

然后将绑定列都改为模板列,<asp:TemplateField HeaderText="职务">

<EditItemTemplate>

<asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("zw") %>'></asp:TextBox>

</EditItemTemplate>

<ItemTemplate>

<asp:Label ID="Label8" runat="server" Text='<%# Eval("zw") %>'></asp:Label>

</ItemTemplate>

<ControlStyle CssClass="StudentDetailsTableDataControl4" />

<ItemStyle CssClass="StudentDetailsTableDataItem4" />

</asp:TemplateField>

,这个问题就被解决了,目前不知道为什么。

优质内容筛选与推荐>>
1、图像处理 之 去雾
2、Ubuntu下安装fcitx+搜狗输入法
3、关于如何惟一地标识一台Android设备的综合性讨论
4、《企业IT构架转型之道》读书笔记
5、有朋自远方来——阿里软件专家作客武汉博文


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号