| Visual Basic (Declaration) | |
|---|---|
<BrowsableAttribute(False)> Public Property CurrentMailbox As Mailbox | |
| Visual Basic (Usage) | Copy Code |
|---|---|
Dim instance As Imap Dim value As Mailbox instance.CurrentMailbox = value value = instance.CurrentMailbox | |
| C# | |
|---|---|
[BrowsableAttribute(false)] public Mailbox CurrentMailbox {get; set;} | |
| Managed Extensions for C++ | |
|---|---|
[BrowsableAttribute(false)] public: __property Mailbox* get_CurrentMailbox(); public: __property void set_CurrentMailbox( Mailbox* value ); | |
| C++/CLI | |
|---|---|
[BrowsableAttribute(false)] public: property Mailbox^ CurrentMailbox { Mailbox^ get(); void set ( Mailbox^ value); } | |
Property Value
If a mailbox is in the selected state, this property returns the Mailbox object representing the mailbox; null otherwise.The following example demonstrates logging into an IMAP server, copying read messages to a Deleted mailbox, and deleting them.
| Visual Basic | Copy Code |
|---|---|
Private Sub DoMove() ' Demonstrate moving Read messages from "INBOX" to a "Deleted Items" box Try ' Do synchronous login with AutoList Imap1.Login("myServer", "myAccount", "myPassword") ' Create Mailbox objects for easier reference Dim InboxBox As Mailbox = Imap1.CurrentMailbox ' After Login with AutoList, this will be "INBOX" Dim DeletedBox As Mailbox = Imap1.Mailboxes("Deleted Items") ' Update Messages Count in "Deleted Items" box DeletedBox.Refresh() ' Display Messages Count in both boxes LabelDisplay.Text = InboxBox.Messages.Count.ToString() + " " + DeletedBox.Messages.Count.ToString() ' Get an array of ImapMessages with just flags Dim Messages As ImapMessage() = InboxBox.Get(InboxBox.Messages(0), InboxBox.Messages(InboxBox.Messages.Count-1), ImapMessageSections.Flags) ' Copy Read Messages to "Deleted Items" box and Mark them for Deletion Dim Msg as ImapMessage For Each Msg in Messages If Msg.Seen Then 'If Seen flag is set Msg.CopyTo(DeletedBox) ' Copy to "Deleted Items" box Msg.Delete = True ' Set deleted flag in "INBOX" End If Next 'Permanently Remove Copied Messages from "INBOX" InboxBox.Purge() 'Update Messages Count in "Deleted Items" DeletedBox.Refresh() 'Display new Messages Counts LabelDisplay.Text = InboxBox.Messages.Count.ToString() + " " + DeletedBox.Messages.Count.ToString() 'Logout from server Imap1.Logout() Catch Ex As Exception ' Show MessageBox if error occurs MessageBox.Show(Ex.Message, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Sub | |
| C# | Copy Code |
|---|---|
private void DoMove() { //Demonstrate moving Read messages from "INBOX" to a "Deleted Items" box try { //Do synchronous login with AutoList imap1.Login("myServer", "myAccount", "myPassword"); //Create Mailbox objects for easier reference Mailbox inboxBox = imap1.CurrentMailbox; //After Login with AutoList, this will be "INBOX" Mailbox deletedBox = imap1.Mailboxes["Deleted Items"]; //Update Messages Count in "Deleted Items" box deletedBox.Refresh(); //Display Messages Count in both boxes labelDisplay.Text = inboxBox.Messages.Count.ToString() + " " + deletedBox.Messages.Count.ToString(); //Get an array of ImapMessages with just flags ImapMessage[] messages = inboxBox.Get(inboxBox.Messages[0], inboxBox.Messages[inboxBox.Messages.Count-1], ImapMessageSections.Flags); //Copy Read Messages to "Deleted Items" box and Mark them for Deletion foreach (ImapMessage msg in messages) { if (msg.Seen) //If Seen flag is set { msg.CopyTo(deletedBox); //Copy to "Deleted Items" box msg.Delete = true; //Set deleted flag in "INBOX" } } //Permanently Remove Copied Messages from "INBOX" inboxBox.Purge(); //Update Messages Count in "Deleted Items" deletedBox.Refresh(); //Display new Messages Counts labelDisplay.Text = inboxBox.Messages.Count.ToString() + " " + deletedBox.Messages.Count.ToString(); //Logout from server imap1.Logout(); } catch (Exception ex) { //Show MessageBox if error occurs MessageBox.Show(ex.Message, "Error Message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } | |
Gets or sets the Mailbox object that represents the currently selected mailbox. Developers can set this property to enter a mailbox, causing the Imap component to send an EXAMINE command. Note that when this property is set, this object is in the Selected state.
Any method that involves accessing messages within a mailbox will cause that Mailbox to be set to the Imap.CurrentMailbox.
If Imap.AutoList is true, after logging in the Imap.CurrentMailbox is set to "INBOX" if such a mailbox exists. If this mailbox does not exist, Imap.CurrentMailbox will return null.
Target Platforms: Microsoft .NET Framework 2.0
Copy Code