GrapeCity Secure FTP for .NET 4.0J
Progress イベント
使用例 

FtpSession.ProgressSizeによって指定された頻度で進行状況情報を報告します。
シンタックス
<CategoryAttribute("Marshaled Data")>
<DescriptionAttribute("Raised repeatedly while files are copied.")>
Public Event Progress As EventHandler(Of ProgressEventArgs)
[Category("Marshaled Data")]
[Description("Raised repeatedly while files are copied.")]
public event EventHandler<ProgressEventArgs> Progress
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、ProgressEventArgs 型の引数を受け取りました。次の ProgressEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
Item 現在コピー操作中のファイルまたはディレクトリーの進行状況を取得します。
List コピー操作全体の進行状況を取得します。
解説

イベントハンドラでのUIコントロールの更新については、SynchronizingObjectプロパティを参照してください。

使用例
以下のサンプルコードは、進行状況を表示しながらファイルを取得する方法を示します。 getFile関数は、Ftp.Startメソッドに渡して非同期に実行できます。
private void getFile()
{
    // サーバーからファイルを取得します。
    ftp1.Session.RemoteEndPoint.HostNameOrAddress = myServer;
    ftp1.Session.Username = myUsername;
    ftp1.Session.Password = myPassword;
    ftp1.Connect();
    ftp1.Authenticate();
    ftp1.Get("myFile.pdf", myLocalDirectory + "\\myFile.pdf", Synchronize.Off);
    ftp1.Close();
}
        
private void ftp1_Progress(object sender, ProgressEventArgs e)
{
    // 進行状況情報(処理、ファイル名、ファイルの位置、ファイルの長さ)を表示します。
    string s = (e.Item.Action == CopyAction.Get) ? "Getting " : "Putting ";
    s += e.Item.RemotePath + " (" + e.Item.Position.ToString() + " of " + e.Item.Length.ToString() + ")";
    showProgress(s);
}
Private Sub getFile()
    ' サーバーからファイルを取得します。
    ftp1.Session.RemoteEndPoint.HostNameOrAddress = myServer
    ftp1.Session.Username = myUsername
    ftp1.Session.Password = myPassword
    ftp1.Connect()
    ftp1.Authenticate()
    ftp1.Get("myFile.pdf", myLocalDirectory & "\myFile.pdf", Synchronize.Off)
    ftp1.Close()
End Sub

Private Sub ftp1_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs) Handles ftp1.Progress
    ' 進行状況情報(処理、ファイル名、ファイルの位置、ファイルの長さ)を表示します。
    Dim s As String
    s = If((e.Item.Action = CopyAction.Get), "Getting ", "Putting ")
    s &= e.Item.RemotePath & " (" & e.Item.Position.ToString() & " of " & e.Item.Length.ToString() & ")"
      showProgress(s)
End Sub
参照

関連項目

Ftp クラス
Ftp メンバ

 

 


© 2002, GrapeCity inc. All rights reserved.