| Visual Basic (Declaration) | |
|---|---|
Public ReadOnly Property Length As Long | |
| Visual Basic (Usage) | Copy Code |
|---|---|
Dim instance As ImapProgressEventArgs Dim value As Long value = instance.Length | |
| C# | |
|---|---|
public long Length {get;} | |
| Managed Extensions for C++ | |
|---|---|
public: __property long get_Length(); | |
Property Value
Returns the total length of expected data. If there is no way to determine how much data to expect, this value will be 0.The following example demonstrates displaying progress when getting messages.
| Visual Basic | Copy Code |
|---|---|
Private Sub GetTest() ' Login Imap1.Login(Server, User, Pass) ' Get all messages in INBOX, this will cause the Progress event to be raised. Imap1.CurrentMailbox.Get() ' Logout Imap1.Logout() End Sub Private Sub Imap1_Progress(ByVal sender As Object, ByVal e As Dart.PowerTCP.Mail.ImapProgressEventArgs) Handles Imap1.Progress ProgressBar.Minimum = 0 ProgressBar.Maximum = e.Length ProgressBar.Value = e.Position LblProgress.Text = "Processing message " + e.Message.Id If e.Length = e.Position Then LblProgress.Text = "Complete" End If End Sub | |
| C# | Copy Code |
|---|---|
private void GetTest() { // Login imap1.Login(Server, User, Pass); // Get all messages in INBOX, this will cause the Progress event to be raised. imap1.CurrentMailbox.Get(); // Logout imap1.Logout(); } private void imap1_Progress(object sender, Dart.PowerTCP.Mail.ImapProgressEventArgs e) { progressBar.Minimum = 0; progressBar.Maximum = (int)e.Length; progressBar.Value = (int)e.Position; lblProgress.Text = "Processing message " + e.Message.Id; if(e.Length == e.Position) lblProgress.Text = "Complete"; } | |
The value of ImapProgressEventArgs.Length and ImapProgressEventArgs.Position depends on the operation. For example:
- If downloading headers, ImapProgressEventArgs.Length is the total length of the headers. ImapProgressEventArgs.Position is the count of bytes received.
- If downloading messages, ImapProgressEventArgs.Length is the total length of the message. ImapProgressEventArgs.Position is the count of bytes received.
- If downloading body structure or envelope, both of these values will be 0, because the total amount of data being retrieved is unknown.
Target Platforms: Microsoft .NET Framework 2.0
Copy Code