用asp.net 作了不少网页,有的时候查询数据会很慢,我看到有的网站都有一个类似flash的图片或是文字提示“正在查询,请稍后” ,我也放了一个lable ,在查询时给赋值“正在查询,请稍后”,但总是不显示,是我放的不对还是怎么着,在这咨询下大家放在哪里好些??我把数据库查询的代码贴出来:        OleDbCommand cmd1 = new OleDbCommand(sqlStr, db2.getCon());
        cmd1.ExecuteNonQuery();
        OleDbDataAdapter queny1;
        queny1 = new OleDbDataAdapter(cmd1);
        DataSet DataSet6;
        DataSet6 = new DataSet();
        queny1.Fill(DataSet6);
        Label1.Text = "统计速度慢,请稍等!";        GridView1.DataSource = DataSet6;
        GridView1.DataBind();不知 这个Label1.Text = "统计速度慢,请稍等!";放哪好?

解决方案 »

  1.   

    这个得AJAX了,最简单的办法就是放在updatepanel中然后把显示等待的控件放在updateprogress里面
      

  2.   

    呵呵。用js,Ajax。你用服务器代码实现是不行的。因为,当运行的时候,整个浏览器是假死状态的。页面是不会直接相应你程序里面的代码的。知道所有代码执行
      

  3.   

    用ajax不错啊  只要将updateprogress控件放进去 自己设置属性就行了
      

  4.   

    <asp:ScriptManager ID="ScriptManager1" runat="server">
            </asp:ScriptManager>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID ="Button1" EventName ="Click" />
                </Triggers>
                <ContentTemplate>
                    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
                </ContentTemplate>
            </asp:UpdatePanel>
            <asp:UpdateProgress ID="UpdateProgress1" runat="server">
                <ProgressTemplate>
                    <span style =" font-size:12px">数据更新中......</span>
                </ProgressTemplate>
            </asp:UpdateProgress>
            <asp:Button ID="Button1" runat="server" Text="Button" Width="143px" OnClick="Button1_Click" />
      <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>    
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
            <asp:Label ID="Label2" runat="server" Text="请输入用户名"></asp:Label><input type="text" id="text2" /><asp:Button
                ID="Button2" runat="server" Text="查询" onclick="Button1_Click" />
             <asp:UpdateProgress ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
            正在加载数据.............
            </ProgressTemplate>
            </asp:UpdateProgress>或用div显示
      

  5.   

    恩!用AJAX吧!当你在读取或者操作数据库未完成的时候,updateprogress会启动
      

  6.   

    写个LABLE设置隐藏,需要等待时设为显示.
      

  7.   


    updateprogress控件 具体怎么用呢??
      

  8.   

    可以采用NickLee.Web.UI.BusyBox可以参考参考FortuneBase框架
    参考地址www.cnblogs.com/mail-ricklee
      

  9.   

    你那代码是同步执行的  当然不会显示  用ajax吧 
      

  10.   

    updateprogress
    或gif图片也行!
    进度条的js也不少!
      

  11.   

    楼主也可以不用Ajax来试着做做。