ProgressBar y Timer en VB y C#

El ProgressBar se maneja con un timer y la especificación de un limite que se mostrará al usuario cuando el progreso este finalizado, para este ejemplo se mostrara al ejecutar la aplicación un Formulario que al dar click sobre el botón de este indicara al ProgressBar que debe empezar a trabajar y al momento de completarse abrirá el Form2, así que se necesita:

1. Creamos un nuevo formulario que llamaré Form1, dentro de este insertamos un ProgressBar, un timer, un botón y un Label cuyo texto será el numero 0.
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        Timer1.Start()
        ProgressBar1.Enabled = True
    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Timer1.Tick
        ProgressBar1.Value = ProgressBar1.Value + 1
        Label1.Text = CInt(Label1.Text) + 1
        ProgressBar1.Style = ProgressBarStyle.Continuous
        If CInt(ProgressBar1.Value) = 100 Then
            Timer1.Stop()
            Timer1.Enabled = False
            Me.Hide()
            Form2.Show()
        End If
    End Sub
    Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        Timer1.Enabled = False
        Timer1.Interval = 100
    End Sub
End Class
2. Agregamos un nuevo formulario que será Form2.
El mismo ejemplo pero con Form1 programado en C#
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
using System.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceWindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        publicForm1()
        {
            InitializeComponent();
        }
        privatevoid button1_Click(objectsender, EventArgs e)
        {
            timer1.Start();
        }
        privatevoid timer1_Tick(objectsender, EventArgs e)
        {
            progressBar1.Value = progressBar1.Value + 1;
            label1.Text = (Convert.ToInt32(label1.Text) + 1).ToString();
            progressBar1.Style = ProgressBarStyle.Continuous;
            if(Convert.ToInt32(progressBar1.Value) == 100)
            {
                timer1.Stop();
                timer1.Enabled = false;
                this.Hide();
                Form2form2 = new Form2();
                form2.Show();
            }
        }
    }
}

Brak komentarzy