/// <summary>
 /// Initializes a new instance of the <see cref="MessageViewModel"/> class.
 /// </summary>
 public MessageViewModel()
 {
     _stateMachine = new StateMachine();
     _stateMachine.StateChanged += _stateMachine_StateChanged;
     _messages = new ObservableCollection <Message>();
     MessagesView.SortDescriptions.Add(new SortDescription("MessageType", ListSortDirection.Descending));
     MessagesView.MoveCurrentToPosition(0);
     // set first tag of messagestate to lowest message priority
     StateMachine.GetState <MessageState>().Tag = MessageType.Consumable.ToString();
 }
 private void AddMessage(Message message)
 {
     _messages.Add(message);
     Console.WriteLine("Message added. Messages: " + _messages.Count);
     MessagesView.MoveCurrentToPosition(0);
 }