Пример #1
0
        private void MENUITEM_MessageBuffer_Click(object sender, RoutedEventArgs e)
        {
            MenuItem           item     = (sender as MenuItem);
            MessageBufferModel Selected = item.DataContext as MessageBufferModel;

            switch (item.Tag.ToString().ToUpper())
            {
            case "MESSAGEBUFFERREMOVE":
                LIST_Messages.Items.Remove(Selected);
                ; break;
            }
        }
Пример #2
0
 /// <summary>
 /// 删除一条显示的消息缓存
 /// </summary>
 public bool RemoveMessageBufferItem(long FromNum)
 {
     foreach (var item in LIST_Messages.Items)
     {
         MessageBufferModel msg = item as MessageBufferModel;
         if (msg.Msg.FromLoginNumber == FromNum)
         {
             LIST_Messages.Items.Remove(msg);
             return(true);
         }
     }
     return(false);
 }
Пример #3
0
 /// <summary>
 /// 判断是否有某个人的消息缓存
 /// </summary>
 /// <param name="FromNum">发消息的人</param>
 /// <param name="Msg">返回的消息</param>
 /// <returns>是否有此人的消息</returns>
 public bool HasMessageBufferItem(long FromNum, out MessageBufferModel Msg)
 {
     foreach (var item in LIST_Messages.Items)
     {
         MessageBufferModel msg = item as MessageBufferModel;
         if (msg.Msg.FromLoginNumber == FromNum)
         {
             Msg = msg;
             return(true);
         }
     }
     Msg = null;
     return(false);
 }
Пример #4
0
        private void ITEM_MessageBufferItem_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            MessageBufferModel msg = LIST_Messages.SelectedItem as MessageBufferModel;

            if (msg == null)
            {
                return;
            }
            if (GetUserByFriends(msg.From.UloginNumber ?? 0) != null)
            {
                new ChatForm(UserSource).Show(msg.From);
            }
            else
            {
                MessageBox.Show("未成为好友,无法交流");
            }
        }
Пример #5
0
        /// <summary>
        /// 更新一个消息缓存的显示,包括添加
        /// </summary>
        /// <param name="Msg">消息</param>
        public void UpdateMessageBufferItem(MessageModel Msg)
        {
            MessageBufferModel UpdateItem = null;

            if (HasMessageBufferItem(Msg.FromLoginNumber, out UpdateItem))
            {
                LIST_Messages.Items.Remove(UpdateItem);
            }
            String LastMsg = (Msg.MessageContent as MessageContent_Base).ToMessageContent(null).ToString();

            if (Msg.MessageContent is MessageContent_Image)
            {
                LastMsg = "[图片]";
            }
            LIST_Messages.Items.Insert(0, new MessageBufferModel()
            {
                MessageCount = MessageQueueBuffer[Msg.FromLoginNumber].Count,
                Msg          = Msg,
                From         = GetUserByFriends(Msg.FromLoginNumber),
                LastMessage  = LastMsg,
            });
        }