Condividi tramite


ProgressBar.PerformStep Metodo

Definizione

Sposta in avanti la posizione corrente dell'indicatore di stato in base alla quantità della Step proprietà .

public:
 void PerformStep();
public void PerformStep();
member this.PerformStep : unit -> unit
Public Sub PerformStep ()

Eccezioni

Esempio

Nell'esempio di codice seguente viene utilizzato un ProgressBar controllo per visualizzare lo stato di avanzamento di un'operazione di copia file. Nell'esempio vengono utilizzate le Minimum proprietà e Maximum per specificare un intervallo per l'oggetto ProgressBar equivalente al numero di file da copiare. Il codice usa anche la Step proprietà con il PerformStep metodo per incrementare il valore di ProgressBar come file viene copiato. Questo esempio richiede che sia stato creato un ProgressBar controllo denominato pBar1 creato all'interno di un Formoggetto e che sia stato creato un metodo denominato CopyFile (che restituisce un valore booleano che indica che l'operazione di copia file è stata completata correttamente) che esegue l'operazione di copia file. Il codice richiede inoltre che venga creata e passata una matrice di stringhe contenenti i file da copiare al CopyWithProgress metodo definito nell'esempio e che il metodo venga chiamato da un altro metodo o evento in Form.

private:
   void CopyWithProgress( array<String^>^filenames )
   {
      // Display the ProgressBar control.
      pBar1->Visible = true;

      // Set Minimum to 1 to represent the first file being copied.
      pBar1->Minimum = 1;

      // Set Maximum to the total number of files to copy.
      pBar1->Maximum = filenames->Length;

      // Set the initial value of the ProgressBar.
      pBar1->Value = 1;

      // Set the Step property to a value of 1 to represent each file being copied.
      pBar1->Step = 1;

      // Loop through all files to copy.
      for ( int x = 1; x <= filenames->Length; x++ )
      {
         // Copy the file and increment the ProgressBar if successful.
         if ( CopyFile( filenames[ x - 1 ] ))
         {
            // Perform the increment on the ProgressBar.
            pBar1->PerformStep();
         }
      }
   }
private void CopyWithProgress(string[] filenames)
{
    // Display the ProgressBar control.
    pBar1.Visible = true;
    // Set Minimum to 1 to represent the first file being copied.
    pBar1.Minimum = 1;
    // Set Maximum to the total number of files to copy.
    pBar1.Maximum = filenames.Length;
    // Set the initial value of the ProgressBar.
    pBar1.Value = 1;
    // Set the Step property to a value of 1 to represent each file being copied.
    pBar1.Step = 1;
    
    // Loop through all files to copy.
    for (int x = 1; x <= filenames.Length; x++)
    {
        // Copy the file and increment the ProgressBar if successful.
        if (CopyFile(filenames[x-1]))
        {
            // Perform the increment on the ProgressBar.
            pBar1.PerformStep();
        }
    }
}
Private Sub CopyWithProgress(ByVal ParamArray filenames As String())
    ' Display the ProgressBar control.
    pBar1.Visible = True
    ' Set Minimum to 1 to represent the first file being copied.
    pBar1.Minimum = 1
    ' Set Maximum to the total number of files to copy.
    pBar1.Maximum = filenames.Length
    ' Set the initial value of the ProgressBar.
    pBar1.Value = 1
    ' Set the Step property to a value of 1 to represent each file being copied.
    pBar1.Step = 1

    ' Loop through all files to copy.
    Dim x As Integer
    for x = 1 To filenames.Length - 1
        ' Copy the file and increment the ProgressBar if successful.
        If CopyFile(filenames(x - 1)) = True Then
            ' Perform the increment on the ProgressBar.
            pBar1.PerformStep()
        End If
    Next x
End Sub

Commenti

Il PerformStep metodo incrementa il valore della barra di stato in base alla quantità specificata dalla Step proprietà . È possibile utilizzare la Step proprietà per specificare la quantità di modifiche apportate a ogni attività completata in un'operazione. Ad esempio, se si copia un gruppo di file, è possibile impostare il valore della Step proprietà su 1 e il valore della Maximum proprietà sul numero totale di file da copiare. Quando ogni file viene copiato, è possibile chiamare il PerformStep metodo per incrementare la barra di stato in base al valore della Step proprietà . Se si desidera avere un controllo più flessibile del valore dell'indicatore di stato, è possibile utilizzare il Increment metodo o impostare direttamente il valore della Value proprietà.

La Value proprietà specifica la posizione corrente dell'oggetto ProgressBar. Se, dopo aver chiamato il PerformStep metodo , la Value proprietà è maggiore del valore della Maximum proprietà , la Value proprietà rimane al valore della Maximum proprietà . Se, dopo aver chiamato il PerformStep metodo con un valore negativo specificato in Step, la Value proprietà è minore del valore della Minimum proprietà , la Value proprietà rimane al valore della Minimum proprietà .

Poiché un ProgressBar oggetto il cui stile è impostato su Marquee visualizza una barra di scorrimento continua anziché la relativa Value, la chiamata PerformStep non è necessaria e genera un oggetto InvalidOperationException.

Si applica a

Vedi anche