public event EventHandler<TEventArgs> Progress
Show how to handle the Progress event.
using System; using ComponentPro.Net.Mail; ... private long _messageSize; public void ShowProgress() { // Create a new Pop3 instance. Pop3 client = new Pop3(); // Connect to the POP3 server. client.Connect("myserver"); // Authenticate. client.Authenticate("test", "test"); try { // Register an event handler. client.Progress += client_Progress; Pop3MessageCollection list = client.ListMessages(Pop3EnvelopeParts.Size | Pop3EnvelopeParts.MessageInboxIndex); // Download the first message. _messageSize = list[0].Size; // Download the first one. client.DownloadMessage(list[0].MessageInboxIndex, "c:\\temp\\my message.eml"); } catch (Pop3Exception exc) { Console.WriteLine("Exception: " + exc.Message); } // Disconnect. client.Disconnect(); } void client_Progress(object sender, Pop3ProgressEventArgs e) { // Show progress information. if (e.State == Pop3TransferState.Downloading) { Console.Write("\rDownloaded: {0} bytes ({1}% completed)", e.BytesTransferred, e.CalculatePercentage(_messageSize)); } }