I have been using the SL XamWebTimeline/XamTimeline control since the first version.
Since updating to the latest version, I have noticed (what I believe to be) differences in the rendering algorithm for eventspans.
It appear that span items from differing (or the same possibly?) series that overlap or are very close to one another, or are very small (less than a pixel possibly) are not rendered. Is this an enhancement to improve the performance?
Unfortunately it seems to have affected the workings of my application. See these before/after screenshots:
Note that I am using my own style for the eventspans to allow them to be layered within each other. However, I have tried using the default styles and see the same effect.,..
Before 2009.2 (SL3)
After 2010.2 (SL4) - Notice the blue eventspan is no longer rendering even though it exists in the series.
Hope this makes sense. Thanks for any help.
I have performed some more testing on this issue on a fresh SL4 project (no styling of my own)...
I set up a timeline with 2 datetime series and an entry in each series like so:
this.xamTimeline1.Axis = new DateTimeAxis() { AutoRange = false, Unit = 2, UnitType = DateTimeUnitType.Hours, ShowLabels = true, ShowMajorGridLines = true, ShowMajorTickMarks = true, ShowMinorGridLines = true, ShowMinorTickMarks = true, ShowThumb = true }; (this.xamTimeline1.Axis as DateTimeAxis).Minimum = new DateTime(2010, 7, 6); (this.xamTimeline1.Axis as DateTimeAxis).Maximum = new DateTime(2010, 7, 7).AddSeconds(-1); DateTimeSeries one = new DateTimeSeries(); DateTimeSeries two = new DateTimeSeries(); //DateTimeSeries three = new DateTimeSeries(); //DateTimeSeries four = new DateTimeSeries(); DateTimeEntry dte = new DateTimeEntry(); dte.Time = new DateTime(2010,7,6,10,48,29); dte.Duration = new TimeSpan(0,0,59); one.Fill = new SolidColorBrush(Color.FromArgb(50,0,0,255)); one.Entries.Add(dte); DateTimeEntry dte2 = new DateTimeEntry(); dte2.Time = new DateTime(2010, 7, 6, 10, 49, 01); dte2.Duration = new TimeSpan(0, 0, 21); var ctl = new EventSpan(); two.Fill = new SolidColorBrush(Color.FromArgb(50, 255, 0, 0)); two.Entries.Add(dte2); this.xamTimeline1.Series.Add(one); this.xamTimeline1.Series.Add(two);
When I run the app, zoom right in with the zoombar and widen my browser window, I can see the eventspans rendering as expected:
However, If I shrink the width of the browser window, by just a few pixels here, I lose the entry from series one....
You see that the eventspan has vanished, and the ability to select it with the thumb has also gone.
Once again, thanks for any help here...
We fixed this issue. The fix will be available in next service release, which is planned for the end of this week.
Many thanks for the quick action on this. I will look forward to trying it out.