示例#1
0
        private void This_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            if (e.OldValue is View.PityTimer)
            {
                View.PityTimer pt = (View.PityTimer)e.OldValue;

                pt.PropertyChanged -= Pt_PropertyChanged;
            }

            if (e.NewValue is View.PityTimer)
            {
                View.PityTimer pt = (View.PityTimer)e.NewValue;

                Current             = pt.Current;
                pt.PropertyChanged += Pt_PropertyChanged;

                _stillSyncing = pt.SkipFirst && pt.WaitForFirst;
                _packId       = pt.PackId;
            }
            else
            {
                Current = 0;
                _packId = null;
            }
        }
示例#2
0
        private void Pt_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (!(sender is View.PityTimer))
            {
                return;
            }
            View.PityTimer pt = (View.PityTimer)sender;

            switch (e.PropertyName)
            {
            case "Current":
                Current       = pt.Current;
                _stillSyncing = pt.SkipFirst && pt.WaitForFirst;
                break;

            case "Average":
                break;
            }
        }
示例#3
0
        private void BarChartSingle_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            if (e.OldValue is View.PityTimer)
            {
                View.PityTimer pt = (View.PityTimer)e.OldValue;
                pt.PropertyChanged -= Pt_PropertyChanged;
            }

            if (e.NewValue is View.PityTimer)
            {
                View.PityTimer pt = (View.PityTimer)e.NewValue;
                _single.Value       = pt.Current;
                pt.PropertyChanged += Pt_PropertyChanged;
            }
            else
            {
                _single.Value = 0;
            }

            OnPropertyChanged("Average");
        }