Пример #1
0
        internal override void OnRemoveView(DataPoint dataPoint)
        {
            FrameworkElement element = SeriesVisualStatePresenter.GetDataPointView(dataPoint);

            if (!(element is Control) || DataPoint.GetDataPoint((DependencyObject)element) != dataPoint)
            {
                return;
            }
            element.MouseEnter -= (MouseEventHandler)((s, e) => VisualStateManager.GoToState((FrameworkElement)(element as Control), "MouseOver", true));
            element.MouseLeave -= (MouseEventHandler)((s, e) => VisualStateManager.GoToState((FrameworkElement)(element as Control), "Normal", true));
        }
Пример #2
0
        internal static DataPoint GetDataPointFromSelectedElement(DependencyObject element, DependencyObject rootElement)
        {
            DataPoint        dataPoint        = (DataPoint)null;
            DependencyObject dependencyObject = element;

            if (dependencyObject != null)
            {
                do
                {
                    dataPoint        = DataPoint.GetDataPoint(dependencyObject);
                    dependencyObject = VisualTreeHelper.GetParent(dependencyObject);
                }while (dataPoint == null && dependencyObject != null && dependencyObject != rootElement);
            }
            return(dataPoint);
        }
Пример #3
0
        internal override void OnUpdateView(DataPoint dataPoint)
        {
            FrameworkElement element = SeriesVisualStatePresenter.GetDataPointView(dataPoint);

            if (element != null && DataPoint.GetDataPoint((DependencyObject)element) != dataPoint)
            {
                DataPoint.SetDataPoint((DependencyObject)element, dataPoint);
                if (element is Control)
                {
                    element.MouseEnter += (MouseEventHandler)((s, e) => VisualStateManager.GoToState((FrameworkElement)(element as Control), "MouseOver", true));
                    element.MouseLeave += (MouseEventHandler)((s, e) => VisualStateManager.GoToState((FrameworkElement)(element as Control), "Normal", true));
                }
            }
            FrameworkElement frameworkElement = dataPoint.View == null || dataPoint.View.LabelView == null ? (FrameworkElement)null : (FrameworkElement)dataPoint.View.LabelView;

            if (frameworkElement == null || DataPoint.GetDataPoint((DependencyObject)frameworkElement) == dataPoint)
            {
                return;
            }
            DataPoint.SetDataPoint((DependencyObject)frameworkElement, dataPoint);
        }