private void hypothesisView_Tapped(object sender, TappedRoutedEventArgs e)
        {
            HypothesisView view = (HypothesisView)sender;
            var            hypo = (HypothesisViewModel)view.DataContext;

            if (hypo.IsExpanded)
            {
                hypo.TargetSize = new Vec(HypothesisViewModel.DefaultSize, HypothesisViewModel.DefaultSize);
            }
            else
            {
                hypo.TargetSize = new Vec(HypothesisViewModel.ExpandedWidth, HypothesisViewModel.ExpandedHeigth);
            }
            hypo.IsExpanded = !hypo.IsExpanded;
            updateRendering();
        }
        private void HypothesisViewModels_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
        {
            if (e.OldItems != null)
            {
                foreach (var item in e.OldItems)
                {
                    var hypo = (HypothesisViewModel)item;
                    hypo.PropertyChanged -= Hypo_PropertyChanged;

                    if (_views.ContainsKey(hypo))
                    {
                        _contentCanvas.Children.Remove(_views[hypo]);
                        _views[hypo].Tapped += hypothesisView_Tapped;
                        _views.Remove(hypo);
                    }
                }
            }
            if (e.NewItems != null)
            {
                foreach (var item in e.NewItems)
                {
                    var hypo = (HypothesisViewModel)item;
                    hypo.PropertyChanged += Hypo_PropertyChanged;
                    hypo.Position         = new Pt(this.ActualWidth, this.ActualHeight + hypo.Size.Y);
                    var v = new HypothesisView();
                    v.DataContext = hypo;
                    _views.Add(hypo, v);
                    _contentCanvas.Children.Add(v);
                    v.Opacity        = 0;
                    v.Tapped        += hypothesisView_Tapped;
                    hypo.IsDisplayed = true;
                    toggleDisplayed(hypo);
                }
            }

            _lastVisibleIndex = ((IEnumerable <HypothesisViewModel>)sender).Count() - 1;
            updateRendering();
        }