在Asp.net中显示加载消息

时间:2012-07-24 20:22:31

标签: c# asp.net ajaxcontroltoolkit

我想在我的asp.net网页上显示一个加载指示器,而我的gridview正在填充数据

这是我的aspx页面的一部分

    <script type="text/javascript" src="Scripts/jsUpdateProgress.js"></script>      
    <asp:ScriptManager ID="ScriptManager1" runat="server" />
    <asp:Panel ID="panelUpdateProgress" runat="server" CssClass="updateProgress">
        <asp:UpdateProgress ID="UpdateProg1" DisplayAfter="0" runat="server">
            <ProgressTemplate>
                <div style="position: relative; top: 30%; text-align: center;">
                    <img src="Styles/images/loading.gif" style="vertical-align: middle" alt="Processing" />
                    Loading...
                </div>
            </ProgressTemplate>
        </asp:UpdateProgress>
    </asp:Panel>
    <ajaxToolkit:ModalPopupExtender ID="ModalProgress" runat="server" TargetControlID="panelUpdateProgress"
        BackgroundCssClass="modalBackground" PopupControlID="panelUpdateProgress" />

(我的代码基于此示例weblogs.asp.net/blogs/guillermo/Code/modalExample.zip)

这是我调用方法的按钮

<asp:UpdatePanel ID="updatePanel" runat="server">
        <ContentTemplate>
            <asp:Button ID="btMonth" runat="server" onclick="btMonth_Click" Text="Ver" />
        </ContentTemplate>
    </asp:UpdatePanel>

这是我的方法btMonth_Click

的c#代码
    protected void btMonth_Click(object sender, EventArgs e)
{
    string query = "select * from table";
    SqlDataSource1.SelectCommand = query;
    gInd.DataSourceID = "SqlDataSource1";
}

正如您在“加载”指示符出现时所看到的那样我想要填充GridView,但是当我在我的按钮中单击调用方法btMonth_Click时,该方法被执行但我的gridview没有被填充。如果我删除了我的按钮的asp:UpdatePanel,我的gridview就可以了。

我有什么遗失的吗?

2 个答案:

答案 0 :(得分:2)

您需要将GridVew放在UpdatePanel内以便部分呈现

如果出于设计原因,您无法将网格放在第一个 UpdatePanel内,您可以拥有多个UpdatePanel

欲了解更多信息:

How to work with two update panels on same .aspx page

答案 1 :(得分:0)

尝试添加:

gInd.DataBind();
在你的btMonth_Click中

(顺便说一下,更好的命名约定是btnMonth_Click)

    protected void btMonth_Click(object sender, EventArgs e)
{
    string query = "select * from table";
    SqlDataSource1.SelectCommand = query;
    gInd.DataSourceID = "SqlDataSource1";
    gInd.DataBind();
}