ASP.NET - Progressbar actualizar la petición en el cliente antes que termine ejecución de metodo

   
Vista:

Progressbar actualizar la petición en el cliente antes que termine ejecución de metodo

Publicado por Israel Neftali (1 intervención) el 19/01/2016 22:56:23
Hola soy nuevo por estos rumbos. Tengo un problema estoy programando con ASP.NET y C# estoy trabajando con un componente en Boostrap que es el progressbar, a este componente le paso la propiedad runat=’server’ para poderlo trabajar en C# tengo un botón que es el que inicia un ciclo que va de 10 en 10 y lo duermo un segundo hasta llegar a 100, y por cada 10 manda llamar un método que hace la función de pintar al componente progressbar para que muestre el progreso, pero desafortunadamente no me muestra el progreso lo pinta completo hasta que termina el clic y no me mostro el progreso, entonces pregunto a ustedes si saben con hacer eso sin necesidad de que se tenga termina la ejecución del clic para que me muestre los resultados en el progressbar. Dejo el código para que me entiendan mejor
Saludos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<!DOCTYPE html>
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 
    <script src="../Scripts/jquery-1.9.1.js"></script>
     <script src="../scritpBuenos/boostrapt/js/jquery-1.11.1.min.js"></script>
    <script src="../scritpBuenos/boostrapt/js/bootstrap.min.js"></script>
    <link href="../scritpBuenos/boostrapt/css/bootstrap.min.css" rel="stylesheet" />
    <link href="../scritpBuenos/boostrapt/css/bootstrap-theme.css" rel="stylesheet" />
 
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button8" runat="server" Text="Perfor" OnClick="Button8_Click" />
           <div class="progress progress-striped">
                            <div class="progress-bar progress-bar-success" role="progressbar"
                                aria-valuenow="60" aria-valuemin="0" aria-valuemax="100"
                                id="bar1" runat="server" >
                            </div>
                        </div>
                <asp:Label ID="lblProgreso" Text="Progreso" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>
 
/*****************************Codigo en c# CS****************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
 
namespace MisEjemplos.Paginas
{
    public partial class Bardatos : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
 
        }
 
 
        public void SetTheProgress(HtmlGenericControl bar, string value)
        {
            bar.Attributes.Add("style", string.Format("width:{0};", value));
            lblProgreso.Text = "Progreso" + value;
        }
 
        protected void Button8_Click(object sender, EventArgs e)
        {
            int i = 0;
            while(i<=100)
            {
                SetTheProgress(bar1, i + "%");
                //Duermo 1 segundo el contador
                Thread.Sleep(1000);
                i = i + 10;
            }
        }
 
    }
}

Espero y me puedan ayudar
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder