public void AddReceivedTextMessage(LanUser from, long id, string message) { Store.Models.Message m = new Store.Models.Message(MessageType.Text); m.FromUserId = from.ID; m.ToUserId = this.OwnerUser.ID; m.Content = message; m.Flag = true; //默认成功,后面按照失败结果设定为false MessageListItem item = new MessageListItem(); item.State = MessageState.Received; item.ID = id; item.Message = m; item.User = from; item.Save(); AddMessageListItem(from, item); }
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); } } }
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); }
private void textBoxInput_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter && !e.Control) { if (!this.SendMessageEnabled) { return; } if (string.IsNullOrEmpty(textBoxInput.Text) || string.IsNullOrEmpty(textBoxInput.Text.Replace("\r", "").Replace("\n", ""))) { //空或者只有空行不发送 return; } long id = User.SendTextMessage(Contacter, textBoxInput.Text); Store.Models.Message m = new Store.Models.Message(MessageType.Text); m.FromUserId = this.User.ID; m.ToUserId = this.Contacter.ID; m.Content = textBoxInput.Text; m.Flag = true; //默认成功,后面按照失败结果设定为false MessageListItem item = new MessageListItem(); item.State = MessageState.Sending; item.ID = id; item.Message = m; item.User = this.User; item.Save(); AddMessageItem(item, true); textBoxInput.Text = ""; e.Handled = true; OnSendMessage(m); } }
public void AddFileReceivingMessage(LanUser from, TransportFile file) { //保存记录 Store.Models.FileMessage m = new Store.Models.FileMessage(); m.FromUserId = from.ID; m.ToUserId = this.OwnerUser.ID; m.OriginFilePath = file.SavePath; m.FileName = Path.GetFileName(file.SavePath); m.FileLength = file.File.Length; m.Flag = true; //默认成功,后面按照失败结果设定为false MessageListItem item = new MessageListItem(); item.ID = file.ID; item.Message = m; item.User = from; item.State = MessageState.Receiving; //保存到数据库 item.Save(); AddMessageListItem(from, item); }
private void SendFile_Click(object sender, EventArgs e) { if (!this.SendMessageEnabled) { return; } using (OpenFileDialog ofd = new OpenFileDialog()) { ofd.Filter = "所有文件|*.*"; if (ofd.ShowDialog(this) == DialogResult.OK) { string fileName = ofd.FileName; long id = User.SendFile(Contacter, fileName); //保存发送记录 Store.Models.FileMessage m = new Store.Models.FileMessage(); m.FromUserId = this.User.ID; m.ToUserId = this.Contacter.ID; m.OriginFilePath = fileName; m.FileName = Path.GetFileName(fileName); m.FileLength = LanFile.GetFileLength(fileName); m.Flag = true; //默认成功,后面按照失败结果设定为false MessageListItem item = new MessageListItem(); item.ID = id; item.Message = m; item.User = this.User; item.State = MessageState.Sending; item.Save(); AddMessageItem(item, true); OnSendMessage(m); } } }