在UserControl内的UpdatePanel中进行GridView排序

时间:2012-07-10 12:21:52

标签: asp.net gridview user-controls viewstate

我确实找到了类似的问题,但没有确定的答案。

如果我在GridView内加UpdatePanel,一切正常。 但是,如果我将其放在UserControl <UserControl><UpdatePanel><GridView></..>之内, 通过单击GridView上的标题进行排序不再有效(没有任何反应)。

我当然可以手动处理排序(手动维护ViewState),但这真的是唯一的方法吗?

是否不支持UserControls内的UpdatePanels中的GridView?

ASPX页:

<%@ Register src="usercontrols/MyModule.ascx" TagPrefix="mm" TagName="MyModule" %>
...
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager runat="server"/>
        <mm:MyModule runat="server" />
    </div>
    </form>
</body>

用户控件:

...
<asp:UpdatePanel ID="MainUpdatePanel" runat="server">
    <ContentTemplate>
    ....
    <asp:GridView ID="GridViewData" runat="server"
        GridLines="None"
        CssClass="gridview"
        AutoGenerateColumns="false"
        AllowPaging="false"
        AllowSorting="true"
        ShowHeaderWhenEmpty="true"
        ShowFooter="true"
        OnSorting="GridViewData_Sorting">
        <Columns>
            <asp:TemplateField HeaderText="MyHeader" SortExpression="dbMyColumn">
                <ItemTemplate>
                    <%# Eval("dbMyColumn") %>
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

GridViewData_Sorting方法对此问题没有任何兴趣。

0 个答案:

没有答案