Donnez votre avis

Faire apparaître "chargement en cours" lors d'un événement bouton (WebForm)

Posez votre question

Introduction


Voici comment afficher un GIF animé (chargement en cours) lorsque vous avez cliqué sur un bouton.


La plupart des scripts trouvés sur le forum me laisse penser à de la bidouille (pas tous bien sur).

Je vous présente ma méthode simple et rapide à mettre en place.


Il faut l'AjaxToolkit pour la réaliser.

Code ASPX


<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="importation-fichier.aspx.cs"Inherits="importation_fichier" %>
<%@RegisterAssembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI" TagPrefix="asp" %>

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title> Chargement en cours </title>
        <link href="StyleSheet.css" rel="stylesheet" type="text/css" />
    </head>

<body>
    <form id="form1" runat="server">
        <asp:scriptmanager runat="server" AsyncPostBackTimeOut="1000"></asp:scriptmanager>
        <asp:UpdateProgress DynamicLayout="false" ID="UpdateProgress1" runat="server">
            <ProgressTemplate>
                <div class="">
                    <img src="images/loading.gif" alt="Loading" />
                    Traitement du boutons en cours, veuillez patienter.
                </div>
            </ProgressTemplate>
        </asp:UpdateProgress>
        <asp:UpdatePanel ID="UpdatePanel2" runat="server">
            <ContentTemplate>
                <asp:Button ID="Button1" runat="server" onclick="Button1_Click" OnClientClick="divSaisie.style.visibility='hidden';" Text="Importer" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </form>
</body>
</html>

Code C#


protected void Button1_Click( object sender, EventArgs e)
{   
    // ici votre code que vous voulez faire. J'ai mis un Thread.sleep pour que vous voyer comment cela réagit
    System.Threading.
    Thread .Sleep(5000);
}
Ajouter un commentaire

Commentaires

Commenter la réponse de cs_ijmouan