public void AddView(IView view)
 {
     if (!views.Contains(view))
     {
         view.IsActive = true;
         viewQueue.Enqueue(Tuple.Create(view, QueueState.Add));
     }
     else
     {
         Debug.WriteLine("Active views already contains this view");
     }
 }
 public void RemoveView(IView view)
 {
     if (views.Contains(view))
     {
         view.IsActive = false;
         viewQueue.Enqueue(Tuple.Create(view, QueueState.Remove));
     }
 }