如何在GridView Process ASP.NET中显示gif

时间:2013-07-17 11:54:43

标签: asp.net multithreading gridview

我有一个在ASP.NET GridView中显示各种数据的应用程序。值显示为组合框的选择。当我选择comobo box时,重新加载过程大约需要8秒钟。我想在开始进程之前显示一个加载的gif,然后结束它取消显示图像。我尝试使用一个线程,但它没有很好地工作。有人能帮助我吗?

protected void Page_Load(object sender, EventArgs e)
    {
        //My Image
        imageLoad.Visible = true;
        Assembly myAsm = Assembly.Load("PainelBordo");
        AssemblyName aName = myAsm.GetName();
        Version version = aName.Version;

        BusinessLogicLayer bll = new BusinessLogicLayer();

        LoadDDLWRTG(CreateDataTableWRTGList());
        LoadDataPBList();

        TimerRefresh.Interval = Convert.ToInt32(ConfigurationManager.AppSettings["TimerInterval"].ToString());

        lblUpdateDate.Text = "Refresh " + bll.DateUpdateFormat(DateTime.Now);
        // My image
        imageLoad.Visible = false;
    }

Combobox SelectedIndexChanged。

protected void ddlWRTGroup_SelectedIndexChanged(object sender, EventArgs e)
    {
        Page_Load(sender, e);
    }

1 个答案:

答案 0 :(得分:1)

在UpdatePanel中拖放Button( btnInvoke )和Label( lblText )控件。同时在 UpdatePanel 中添加<div id="divImage">。此div将包含描述进度的 .gif 图像,并且最初设置为不可见 style="display:none" 。在按钮上单击,执行耗时的任务。在我们的例子中,我们使用Thread.Sleep(3000)

设置了3秒的延迟

C#

protected void btnInvoke_Click(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(3000);
        lblText.Text = "Processing completed";
    }

取自 here