Example #1
0
        private void SendImage_Click(object sender, EventArgs e)
        {
            if (!this.SendMessageEnabled)
            {
                return;
            }
            using (OpenFileDialog ofd = new OpenFileDialog())
            {
                ofd.Filter = "图像文件|*.png;*.jpg;*.bmp;";
                if (ofd.ShowDialog(this) == DialogResult.OK)
                {
                    string fileName = ofd.FileName;
                    Image  smallImg = LanImage.GetThumbnailImage(fileName, MessageListBox.PICTURE_THUMBNAIL_HEIGHT);
                    if (smallImg == null)
                    {
                        //可能不是合法的图片
                        return;
                    }

                    long id = User.SendImage(Contacter, fileName);

                    //保存发送记录,只保存缩略图,原图的Path也保存
                    Store.Models.ImageMessage m = new Store.Models.ImageMessage(smallImg);
                    m.FromUserId = this.User.ID;
                    m.ToUserId   = this.Contacter.ID;
                    m.OriginPath = fileName;
                    m.Flag       = true; //默认成功,后面按照失败结果设定为false

                    MessageListItem item = new MessageListItem();
                    item.ID      = id;
                    item.State   = MessageState.Sending;
                    item.Message = m;
                    item.User    = this.User;

                    item.Save();

                    AddMessageItem(item, true);

                    OnSendMessage(m);
                }
            }
        }
Example #2
0
        public void AddReceivedImageMessage(LanUser from, long id, Image image)
        {
            //保存记录
            Store.Models.ImageMessage m = new Store.Models.ImageMessage(image);
            m.FromUserId = from.ID;
            m.ToUserId   = this.OwnerUser.ID;
            m.OriginPath = "";
            m.Flag       = true; //默认成功,后面按照失败结果设定为false

            MessageListItem item = new MessageListItem();

            item.ID      = id;
            item.State   = MessageState.Received;
            item.Message = m;
            item.User    = from;

            item.Save();

            AddMessageListItem(from, item);
        }