public override void FormOnLoad() { base.FormOnLoad(); FormMain formMain = SystemConfiguration.FormMain; Reports report = formMain.GetSelectedReport(); //CloudDiagnosis.Entity.Reports report = formMain.GetSelectedReport(); if (report.Report_ID != 0) { //if (!report.IsAudited) //{ // this.ReadRichTextBox.Clear(); // MessageBox.Show("该报表还没有经过医生审核,不能发起讨论!", "提醒", MessageBoxButtons.OK, MessageBoxIcon.Information); // return; //} //ReadRichTextBox.ReadOnly = false; Consultation cs = new Consultation(); cs.SenderID = Convert.ToDecimal(report.User_ID); cs.Report_ID = report.Report_ID; cs.ReceiverID = SystemConfiguration.LoginUser.User_ID; //连接服务器 ClientCloudEyesServer.CloudEyesSoapClient serviceClient = new ClientCloudEyesServer.CloudEyesSoapClient("CloudEyesSoap"); //连接接口 string jsonResult = serviceClient.GetMessage(cs.SenderID, cs.ReceiverID); //反序列化 List <Consultation> cons = JsonConvert.DeserializeObject <List <Consultation> >(jsonResult); //接收信息 Consultation[] tempcon = new Consultation[cons.Count]; int i = 0; this.ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; //this.ReadRichTextBox.ScrollToCaret(); this.ReadRichTextBox.SelectionAlignment = HorizontalAlignment.Left; foreach (Consultation con in cons) { tempcon[i] = con; int j = 0; int k = 0; while (tempcon[i].Content[j].ToString() != "\n") { ReadRichTextBox.SelectionColor = Color.Red; Font font = new Font(FontFamily.GenericMonospace, 16, FontStyle.Regular); ReadRichTextBox.SelectionFont = font; ReadRichTextBox.AppendText(tempcon[i].Content[j].ToString()); j++; k = j; } ReadRichTextBox.AppendText("\n"); k++; while (k != tempcon[i].Content.Length) { ReadRichTextBox.SelectionColor = Color.Green; Font font = new Font(FontFamily.GenericMonospace, 24, FontStyle.Regular); ReadRichTextBox.SelectionFont = font; ReadRichTextBox.AppendText(tempcon[i].Content[k].ToString()); k++; } if (tempcon[i].images != "") { byte[] buffer = Convert.FromBase64String(tempcon[i].images); MemoryStream ms = new MemoryStream(buffer);//显示图片 //pictureBox1.Image =System.Drawing. Image.FromStream(ms); Bitmap bmp = new Bitmap(ms); // PictureBox pb = new PictureBox(); // pb.Image = System.Drawing.Image.FromStream(ms); //this.ReadRichTextBox.Controls.Add(pb); //pictureBox1.Image =System.Drawing. Image.FromStream(ms); //ReadRichTextBox.AppendText(System.Drawing.Image.FromStream(ms).ToString()); Clipboard.SetDataObject(bmp, false); ReadRichTextBox.Paste(); // ReadRichTextBox.AppendText("\n"); } ReadRichTextBox.AppendText("\n"); ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; //Set the current caret position at the end //ReadRichTextBox.ScrollToCaret(); Clipboard.Clear(); //WriteRichTextBox.Focus(); // ReadRichTextBox.ReadOnly = true; } } }
private void SendButton_Click_1(object sender, EventArgs e) { FormMain formMain = SystemConfiguration.FormMain; Reports report = formMain.GetSelectedReport(); //CloudDiagnosis.Entity.Reports report = formMain.GetSelectedReport(); if (report.Report_ID != 0) { if (!report.IsAudited) { this.ReadRichTextBox.Clear(); MessageBox.Show("该报表还没有经过医生审核,不能发起讨论!", "提醒", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } Consultation cs = new Consultation();//创建对象 try { this.ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; this.ReadRichTextBox.ScrollToCaret(); this.ReadRichTextBox.SelectionAlignment = HorizontalAlignment.Right; //改变文本排列方式右对齐 //发送信息, //if (this.WriteRichTextBox.Text != ""||WriteRichTextBox.Rtf.IndexOf((@"{\pict\"))>-1) if (!string.IsNullOrWhiteSpace(WriteRichTextBox.Text) || WriteRichTextBox.Rtf.IndexOf((@"{\pict\")) > -1) //判断发送框中是否有东西 { //ReadRichTextBox.ReadOnly = false; //string left = this.ReadRichTextBox.SelectionAlignment.ToString(); // if (this.ReadRichTextBox.Text != "") // { this.ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; this.ReadRichTextBox.ScrollToCaret(); this.ReadRichTextBox.SelectionAlignment = HorizontalAlignment.Right; //改变文本排列方式右对齐 if (!string.IsNullOrWhiteSpace(WriteRichTextBox.Text)) //判断发送框中是否有文字 { this.ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; this.ReadRichTextBox.ScrollToCaret(); Font font1 = new Font(FontFamily.GenericMonospace, 16, FontStyle.Regular); ReadRichTextBox.SelectionFont = font1; ReadRichTextBox.SelectionColor = Color.Blue; this.ReadRichTextBox.AppendText(SystemConfiguration.LoginUser.UserName + " " + DateTime.Now.ToString() + "\n"); //this.ReadRichTextBox.Text = this.ReadRichTextBox.Text + "\r\n"; Font font2 = new Font(FontFamily.GenericMonospace, 24, FontStyle.Regular); ReadRichTextBox.SelectionFont = font2; ReadRichTextBox.SelectionColor = Color.Red; this.ReadRichTextBox.AppendText(this.WriteRichTextBox.Text + "\n"); } else { //this.ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; //this.ReadRichTextBox.ScrollToCaret(); ReadRichTextBox.SelectionColor = Color.Blue; Font font1 = new Font(FontFamily.GenericMonospace, 16, FontStyle.Regular); ReadRichTextBox.SelectionFont = font1; this.ReadRichTextBox.AppendText(SystemConfiguration.LoginUser.UserName + " " + DateTime.Now.ToString() + "\n"); //this.ReadRichTextBox.Text = this.ReadRichTextBox.Text + "\r\n"; } //发送图片 PictureBox pb = new PictureBox(); pb.Image = null; pb.Image = Clipboard.GetImage(); if (pb.Image != null) { pb.Image.Save("8.jpg", System.Drawing.Imaging.ImageFormat.Jpeg); //pb.Image.Save("C:/2/7.jpg", System.Drawing.Imaging.ImageFormat.Jpeg); pb.Image.Dispose(); pb.Dispose(); Clipboard.Clear(); byte[] buffer = getBytes("8.jpg"); //转为二进制 //byte[] buffer = getBytes("C:/2/7.jpg");//转为二进制 MemoryStream ms = new MemoryStream(buffer); //显示图片 //pictureBox1.Image =System.Drawing. Image.FromStream(ms); Bitmap bmp = new Bitmap(ms); // PictureBox pb = new PictureBox(); // pb.Image = System.Drawing.Image.FromStream(ms); //this.ReadRichTextBox.Controls.Add(pb); //pictureBox1.Image =System.Drawing. Image.FromStream(ms); //ReadRichTextBox.AppendText(System.Drawing.Image.FromStream(ms).ToString()); Clipboard.SetDataObject(bmp, false); ReadRichTextBox.Paste(); ReadRichTextBox.AppendText("\n"); // this.ReadRichTextBox.Text = this.ReadRichTextBox.Text + SystemConfiguration.LoginUser.UserName + " " + DateTime.Now.ToString() + "\r\n"; //this.ReadRichTextBox.Text = this.ReadRichTextBox.Text + this.WriteRichTextBox.Text; // this.ReadRichTextBox.RightToLeft = System.Windows.Forms.RightToLeft.No; //this.ReadRichTextBox.SelectionAlignment = HorizontalAlignment.Left; // } // else // { // this.ReadRichTextBox(); // this.ReadRichTextBox.Text = SystemConfiguration.LoginUser.UserName+ " " + DateTime.Now.ToString() + "\r\n" + this.WriteRichTextBox.Text; //this.ReadRichTextBox.SelectionAlignment = HorizontalAlignment.Left; // } //信息封装成一个对象 //decimal readbox = 1; cs.Content = SystemConfiguration.LoginUser.UserName + " " + DateTime.Now.ToString() + "\r\n" + this.WriteRichTextBox.Text; cs.SenderID = SystemConfiguration.LoginUser.User_ID; cs.Report_ID = report.Report_ID; cs.ReceiverID = Convert.ToDecimal(report.User_ID); cs.images = Convert.ToBase64String(buffer); // list.Add(cs); string jsondata = JsonConvert.SerializeObject(cs); //string read = (string)readbox; ClientCloudEyesServer.CloudEyesSoapClient serviceClient = new ClientCloudEyesServer.CloudEyesSoapClient("CloudEyesSoap"); bool jsonResult = serviceClient.SendMessage(jsondata); } else { cs.Content = SystemConfiguration.LoginUser.UserName + " " + DateTime.Now.ToString() + "\r\n" + this.WriteRichTextBox.Text; cs.SenderID = SystemConfiguration.LoginUser.User_ID; cs.Report_ID = report.Report_ID; cs.ReceiverID = Convert.ToDecimal(report.User_ID); cs.images = ""; string jsondata = JsonConvert.SerializeObject(cs); //string read = (string)readbox; ClientCloudEyesServer.CloudEyesSoapClient serviceClient = new ClientCloudEyesServer.CloudEyesSoapClient("CloudEyesSoap"); bool jsonResult = serviceClient.SendMessage(jsondata); } //把集合放入json中 //反序列化对象 // JavaScriptSerializer js = new JavaScriptSerializer(); // Consultation consultation = js.Deserialize<Consultation>(jsonResult.ToString()); ReadRichTextBox.SelectionStart = ReadRichTextBox.Text.Length; //Set the current caret position at the end ReadRichTextBox.ScrollToCaret(); Clipboard.Clear(); this.WriteRichTextBox.Clear(); } else { MessageBox.Show("无消息发不出"); } //ReadRichTextBox.ReadOnly = true; WriteRichTextBox.Focus(); } catch (Exception ex) { throw (ex); } } }