public ChatBubblesWindow() { InitializeComponent(); // FOLLOWING CODEBLOCK IS ONLY FOR DEMONSTRATION PURPOSES messages.Add(new Message() { Side = MessageSide.You, Text = "Hello sir. How may I help you?" }); curside = MessageSide.You; // END OF DEMO BLOCK this.DataContext = messages; scrollViewerScrollToEndAnim = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(1), EasingFunction = new SineEase() }; Storyboard.SetTarget(scrollViewerScrollToEndAnim, this); Storyboard.SetTargetProperty(scrollViewerScrollToEndAnim, new PropertyPath(VerticalOffsetProperty)); scrollViewerStoryboard = new Storyboard(); scrollViewerStoryboard.Children.Add(scrollViewerScrollToEndAnim); this.Resources.Add("foo", scrollViewerStoryboard); MsgTextInput.Focus(); }
private void AddTextMe(string text) { messages.Add(new Message() { Side = MessageSide.Me, Text = text, PrevSide = curside }); curside = MessageSide.Me; ScrollConversationToEnd(); MsgTextInput.Text = ""; MsgTextInput.Focus(); // FOLLOWING CODEBLOCK IS ONLY FOR DEMONSTRATION PURPOSES // DELETE FOR NORMAL USE! AddTextYou(text); AddTextYou(text); messages.Add(new Message() { Side = MessageSide.Me, Text = text, PrevSide = curside }); curside = MessageSide.Me; ScrollConversationToEnd(); MsgTextInput.Text = ""; MsgTextInput.Focus(); messages.Add(new Message() { Side = MessageSide.Me, Text = text, PrevSide = curside }); curside = MessageSide.Me; ScrollConversationToEnd(); MsgTextInput.Text = ""; MsgTextInput.Focus(); // END OF DEMO BLOCK }
private void AddTextYou(string text) { messages.Add(new Message() { Side = MessageSide.You, Text = text, PrevSide = curside }); curside = MessageSide.You; ScrollConversationToEnd(); MsgTextInput.Text = ""; MsgTextInput.Focus(); }