private void SetupChartScroller(ChartScrollerProperties properties) { if (_scrollerProperties == properties) { return; } if (properties == null) { if (_scroller != null) { _scroller.Visibility = Visibility.Collapsed; } _scrollerProperties = null; return; } _scrollerProperties = properties; _scrollerProperties.Chart = this; _scroller.SetProperties(_scrollerProperties); _scroller.Visibility = IsChartScrollerVisible ? Visibility.Visible : Visibility.Collapsed; UpdateScrollerVisual(); }
/// <summary> /// Ovveride /// </summary> public override void OnApplyTemplate() { base.OnApplyTemplate(); _rootGrid = GetTemplateChild("rootGrid") as Grid; if (_rootGrid == null) { throw new NullReferenceException(); } _panelsContainer = GetTemplateChild("rootCanvas") as PanelsContainer; if (_panelsContainer == null) { throw new NullReferenceException(); } _calendar = GetTemplateChild("calendarPanel") as Calendar; if (_calendar == null) { throw new NullReferenceException(); } _panelsBar = GetTemplateChild("panelsBar") as PanelsBarContainer; if (_panelsBar == null) { throw new NullReferenceException(); } _scroller = GetTemplateChild("scroller") as ChartScrollerEx; if (_scroller != null) { SetupChartScroller(ChartScrollerProperties = ChartScrollerProperties.CreateDefault(this)); } // _chartScroller = GetTemplateChild("scroller") as ChartScroller; // // if (_chartScroller != null) // { // _chartScroller.OnPositionChanged += ChartScrollerOnPositionChanged; // _chartScroller.Chart = this; // ShowHideChartScroller(); // _chartScroller.TrackBackground = ChartScrollerTrackBackground; // _chartScroller.TrackButtonsBackground = ChartScrollerTrackButtonsBackground; // _chartScroller.ThumbButtonBackground = ChartScrollerThumbButtonBackground; // } //init objects _panelsContainer._chartX = this; //_panelsContainer._panelsHolder.Children.Add(_textLabelTitle); _panelsContainer.Children.Add(_textLabelTitle); _textLabelTitle.Visibility = Visibility.Collapsed; Canvas.SetZIndex(_textLabelTitle, ZIndexConstants.TextLabelTitle); _panelsBar._chartX = this; _panelsBar.OnButtonClicked += (sender, e) => _panelsContainer.RestorePanel(e._chartPanel); _calendar._chartX = this; SetPanelsBarVisibility(); _calendar.MouseLeftButtonDown += Calendar_OnMouseLeftButtonDown; _calendar.MouseLeftButtonUp += Calendar_OnMouseLeftButtonUp; _calendar.KeyDown += Calendar_OnKeyDown; _calendar.KeyUp += Calendar_OnKeyUp; KeyDown += Calendar_OnKeyDown; KeyUp += Calendar_OnKeyUp; MouseLeftButtonDown += (sender, e) => Focus(); #if WPF _calendar.MouseRightButtonDown += Calendar_OnMouseRightButtonDown; _calendar.MouseRightButtonUp += Calendar_OnMouseRightButtonUp; #endif if (System.ComponentModel.DesignerProperties.GetIsInDesignMode(this)) { AddChartPanel(); _panelsContainer.InvalidateMeasure(); _panelsContainer.InvalidateArrange(); } SetYAxes(); _templateLoaded = true; ChartLoaded(this, EventArgs.Empty); }