none
VB .NET - OpenFileDialog com ProgressBar - Exibir nome de Arquivo em tempo cópia RRS feed

  • Discussão Geral

  • Olá a todos.
    Estou copiando arquivos com OpenFileDialog.
    Minha dúvida é , como exibir o nome do arquivo que está sendo copiado em tempo de execução.
    Também eu sei que se os arquivos forem muito pequenos nem dará tempo de exibir o nome.
    Conforme imagem abaixo só é exibido o último arquivo copiado.

    01 - Código

    Imports System.IO
    Public Class saveFileDialog
        Dim pathDestino = "C:\00inst\teste\"
    
        Private Sub btnBrowser_Click(sender As Object, e As EventArgs) Handles btnBrowser.Click
            Dim OFD = OpenFileDialog1
            OFD.Multiselect = True
            OFD.Title = "ALL Files"
            OFD.Filter = "All Files | *.*"
            OFD.ShowDialog()
    
            With ProgressBar1
                .Minimum = 0
                .Value = .Minimum
                .Maximum = OFD.FileNames.Count
            End With
    
        End Sub
    
        Private Sub btnCopiar_Click(sender As Object, e As EventArgs) Handles btnCopiar.Click
            Dim OFD = OpenFileDialog1
            For Each F As String In OFD.FileNames
                If ProgressBar1.Value < OFD.FileNames.Count Then
                    Label2.Text = " Copiando Arquivo: " & System.IO.Path.GetFileName(F)
                    System.IO.File.Copy(F, pathDestino & System.IO.Path.GetFileName(F), FileIO.UIOption.AllDialogs)
                    ProgressBar1.Value += 1
                End If
            Next
            Label1.Text = ProgressBar1.Value & "/" & OFD.FileNames.Count & " Arquivo(s) Copiado(s)"
        End Sub
    End Class

    02 - Imagens

    Agradeço antecipadamente pela ajuda.


    JoseBonfim

    • Tipo Alterado Marcos SJ segunda-feira, 22 de fevereiro de 2016 19:41 Threads de "How to" serão modificadas para discussão geral
    segunda-feira, 22 de fevereiro de 2016 11:58