有没有人有任何关于创建自定义silverlight时间线的好指示?!实际上它甚至不需要那个自定义,我有一个数据库表,该表中的每个对象都有一个名为“CreateDate”的日期时间字段。我想用这个字段来组合一个时间轴,在每个特定的CreateDate点显示其他相关字段........
任何提示?建议?救命?样品
干杯
答案 0 :(得分:2)
实施您自己的时间轴面板。很容易!
面板允许您通常为其子项控制布局。 ItemsControl例如公开了一个名为ItemsPanel的属性,它是ItemsPanelTemplate类型。默认情况下,这个ItemsPanelTemplate包含一个垂直StackPanel,但可以用你真棒的时间轴面板覆盖。它们对任何时间轴的关键是x坐标。
使用下面的代码计算你的x坐标是战斗的一半。在此之后,只需确定重叠,您就可以在时间轴上正确堆叠项目。
Avanade Silverlight加速器同时具有时间轴控制和StackCalendar控件(想想Gannt图表),它可以很好地工作。
public double ScaleDate(DateTime date)
{
TimeSpan span = this.StopDate - this.StartDate;
TimeSpan pos = date - this.StartDate;
double posDays = double.Parse(pos.Days.ToString());
double spanDays = double.Parse(span.Days.ToString());
double x = posDays / spanDays;
return x;
}
答案 1 :(得分:1)
我所知道的唯一一个是来自Infragistics的this commercial control。
(我不隶属于他们)
答案 2 :(得分:1)
也请尝试timeline.codeplex.com。根据LGPL许可证,它是免费控制的。