public void CreateTimelineCalculator( string calendarType, DateTime currentDateTime, DateTime minDateTime, DateTime maxDateTime ) { Debug.Assert(this.TimelineTray != null); ItemsSource = new TimelineCalendar(calendarType, m_timelineType, minDateTime, maxDateTime); ItemsSource.TimeFormat24 = TimeFormat24; m_calendarType = calendarType; if (ItemTemplate == null) { ItemTemplate = DefaultItemTemplate; } if (TextItemTemplate == null) { TextItemTemplate = DefaultTextItemTemplate; } if (ShortEventTemplate == null) { ShortEventTemplate = DefaultShortEventTemplate; } if (EventTemplate == null) { EventTemplate = DefaultEventTemplate; } if (m_calc != null) { m_calc.ClearEvents(); m_calc.ClearColumns(); } m_calc = new TimelineBuilder( this, CanvasPart, ItemTemplate, TextItemTemplate, TimelineWindowSize, ItemsSource, !IsMainBand ? ShortEventTemplate : EventTemplate, MaxEventHeight, IsMainBand, currentDateTime); m_calc.BuildColumns(); m_calcInitialized = true; }
void UpdateControlSize( bool animate = true, Size?size = null ) { Utilities.Trace(this); if (size == null) { size = new Size(this.ActualWidth, this.ActualHeight); } if (m_calcInitialized) { m_calc.BuildColumns(animate, false, size); this.ResetVisibleDaysHighlight(); } }