private void OpenUrl() { var text = MessageItems.ToText(); var list = ExtractUrl(text); if (list.Count > 0) { Process.Start(list[0]); } }
//--------------------------------------------------------------------- #region ViewMessage public void ViewMessage(MessageModel msg, HorizontalAlignment alignment = HorizontalAlignment.Left) { lock (MessageItemsBlock) MessageItems.Add(new MessageVievModel(msg) { Alignment = alignment }); MessageTextParam = string.Empty; }
private void CopyComment() { var message = MessageItems.ToText(); try { System.Windows.Clipboard.SetText(message); } catch (System.Runtime.InteropServices.COMException) { } //SetSystemInfo("copy: " + message, InfoType.Debug); }
private string GetUrlFromSelectedComment() { var message = MessageItems.ToText(); var match = Regex.Match(message, "(https?://([\\w-]+.)+[\\w-]+(?:/[\\w- ./?%&=]))?"); if (match.Success) { return(match.Groups[1].Value); } return(null); }
/// <summary> /// speichert den übergebenen Wert in den Optimalcode der im String übergebenen MessagItems(Zeichen) /// </summary> /// <param name="messageItemsString"></param> /// <param name="value"></param> void AddOptimalcode(string messageItemsString, string value) { if (messageItemsString.Length == 1) { var exp = MessageItems.Where(x => x.Character == messageItemsString).FirstOrDefault(); exp.Optimalcode = value + exp.Optimalcode; // WErt links anfügen -> dann muss am Ende dei Reihenfolge nicht gedreht werden return; } var items = messageItemsString.Split('+'); foreach (var item in items) { var exp = MessageItems.Where(x => x.Character == item).FirstOrDefault(); exp.Optimalcode = value + exp.Optimalcode; } }
public ChatMessage(string messageText) : base(messageText) { if (MessageItems["type"] != "chatmsg") { throw new MessageException("{0}不是弹幕消息!", messageText); } SendingTime = MessageItems.ContainsKey("cst") ? GetTime(long.Parse(MessageItems["cst"])) : DateTime.Now; Text = MessageItems["txt"]; RoomId = int.Parse(MessageItems["rid"]); UserId = int.Parse(MessageItems["uid"]); UserName = MessageItems["nn"]; UserLevel = int.Parse(MessageItems["level"]); BadgeName = MessageItems["bnn"]; BadgeLevel = int.Parse(MessageItems["bl"]); BadgeRoomId = int.Parse(MessageItems["brid"]); }
private void LoadDesigntimeData() { this.MessageItems.Clear(); this.MessageItems.Add(new Models.MessageItem { ID = "1", Body = "Design Data Body", Title = "Design Title", IsRead = false }); this.MessageItems.Add(new Models.MessageItem { ID = "2", Body = "Design Data Body 2", Title = "Design Title 2", IsRead = true }); this.MessageItems.Add(new Models.MessageItem { ID = "3", Body = "Design Data Body 3", Title = "Design Title 3", IsRead = false }); this.MessageItems.Add(new Models.MessageItem { ID = "4", Body = "Design Data Body 4", Title = "Design Title 4", IsRead = true }); this.Selected = (this.MessageItems.Any()) ? MessageItems.First() : default(Models.MessageItem); }
public GiftMessage(string messageText) : base(messageText) { if (MessageItems["type"] != "dgb") { throw new MessageException("{0}不是礼物消息!", messageText); } RoomId = int.Parse(MessageItems["rid"]); UserId = int.Parse(MessageItems["uid"]); UserName = MessageItems["nn"]; UserLevel = int.Parse(MessageItems["level"]); Weight = int.Parse(MessageItems["dw"]); Gift = Gift.GetGift(MessageItems["gfid"]); Hits = MessageItems.ContainsKey("hits") ? int.Parse(MessageItems["hits"]) : 0; BadgeName = MessageItems["bnn"]; BadgeLevel = int.Parse(MessageItems["bl"]); BadgeRoomId = int.Parse(MessageItems["brid"]); }
private void Draw(DrawingContext drawingContext) { var PenBlack = new Pen(Brushes.Black, 1); var PenBlue = new Pen(Brushes.Blue, 1); var PenGrey = new Pen(Brushes.LightGray, 1); // X-Achse drawingContext.DrawLine(PenBlack, FixPoint(new Point(0, 0)), FixPoint(new Point(this.ActualWidth, 0))); // Y-Achse drawingContext.DrawLine(PenBlack, FixPoint(new Point(0, 0)), FixPoint(new Point(0, this.ActualHeight))); // Raster zeichen Links nach Rechts for (var i = 1; i < this.ValueCountY + 1; i++) { drawingContext.DrawLine(PenGrey, FixPoint(new Point(0, i * IntervallY)), FixPoint(new Point(this.ActualWidth, i * IntervallY))); // Zeichen drawingContext.DrawText( GetFormattedText(MessageItems.ElementAt(i - 1).Character, Brushes.Black, TextAlignment.Right), FixPoint(new Point(-5, i * IntervallY)) ); } // Raster zechnen Unten nach Oben for (var i = 0.1; i < this.MaxValueX; i += 0.1) { drawingContext.DrawLine(PenGrey, FixPoint(new Point(i * IntervallX, 0)), FixPoint(new Point(i * IntervallX, this.ActualHeight))); // Wahrscheinlichkeit drawingContext.DrawText( GetFormattedText(i.ToString(), Brushes.Black), FixPoint(new Point(i * IntervallX, 0)) ); } // Punkte zeichnen foreach (var point in Points) { drawingContext.DrawEllipse(Brushes.Black, PenBlack, FixPoint(point), this.ActualWidth / 250, this.ActualHeight / 250); drawingContext.DrawText( GetFormattedText(point.Caption, Brushes.Black), FixPoint(point.GetPoint()) ); } // Punkt-Verbindungs-Linien zeichnen foreach (DiagramLine line in Lines) { drawingContext.DrawLine(PenBlue, FixPoint(line.Start), FixPoint(line.End)); drawingContext.DrawText( GetFormattedText(line.GetCaption(), Brushes.Red), FixPoint(new Point((line.Start.X + line.End.X) / 2, (line.Start.Y + line.End.Y) / 2)) ); } // ZusatzPunkte zeichnen foreach (var point in AdditionalPoints) { drawingContext.DrawEllipse(Brushes.Blue, PenBlue, FixPoint(point), this.ActualWidth / 250, this.ActualHeight / 250); // Beschriftung Zusatzpunkte //drawingContext.DrawText( // GetFormattedText(point.Caption, Brushes.Blue), // FixPoint(point.GetPoint()) // ); } }
} // 0 = root, 1... public void Add(TreeMessageItem newItem) { MessageItems.Add(newItem); newItem.Parent = this; }