示例#1
0
        /// <summary>
        /// Handle the conversation being deleted from the client.
        /// </summary>
        private void OnConversationDeleted(object sender, InboxEventArgs args)
        {
            Platform.UIThread(this, delegate
            {
                InboxConversation conversation = args.Conversation;
                int selectedRow      = SelectedRow;
                bool deletingCurrent = (selectedRow != -1) && (conversation == _conversations[selectedRow]);

                _conversations.Remove(conversation);

                InitialiseList();
                RefreshList();

                if (deletingCurrent)
                {
                    if (selectedRow == _conversations.Count)
                    {
                        --selectedRow;
                    }
                    if (selectedRow < 0)
                    {
                        ShowEmptyMessage();
                    }
                    else
                    {
                        SelectedRow = selectedRow;
                    }
                }
            });
        }
示例#2
0
 /// <summary>
 /// This event is fired when a new conversation is added to the list of conversations.
 /// </summary>
 private void OnConversationAdded(object sender, InboxEventArgs args)
 {
     Platform.UIThread(this, delegate
     {
         InboxConversation selectedMessage = SelectedMessage;
         SortConversations();
         RestoreSelection(selectedMessage);
     });
 }