我想测量不同的Silverlight图表库(例如Silverlight控件工具包,Visifire,Telerik)在屏幕上加载需要多长时间。测量Silverlight图表加载时间
我的问题是,我只能测量直到控件加载和绘图开始发生在屏幕上的时间,但由于动画效果(例如点渐入),渲染需要更多时间。
有没有什么机会可以设置一些自动化的方式来检测渲染何时结束?我的问题是,我只发现Silverlight框架元素上的Loaded事件处理程序挂钩,只有在渲染开始时才通知它。
我目前使用的示例代码为Silverlight控件工具包如下:
public void Init()
{
Chart chart = new Chart(); // Init chart object
DataPointSeries series;
(...)// Init series, add lots of points, set data binding
Chart.Series.Add(series); // Add series to chart
chart.Loaded += new RoutedEventHandler(Chart_Loaded);
LayoutRoot.Children.Add(chart);
StartTimer(); // Start timer and wait for control to load
}
public void Chart_Loaded(object sender, RoutedEventArgs e)
{
StopTimer(); // Problem: rendering just started at this point, hasn't finished yet!
}