一、定时器(DispatcherTimer)定义及其触发执行委托:
private static IDictionary<IOrderRequestRevision, IList<IOrderRequestRevision>> _menstruumOrders = new Dictionary<IOrderRequestRevision, IList<IOrderRequestRevision>>();
private DispatcherTimer _autoAddMenstruumOrdersDispatcherTimer = null;
private DispatcherTimer MenstruumOrdersDispatcherTimer
{
get
{
if (_autoAddMenstruumOrdersDispatcherTimer == null)
{
_autoAddMenstruumOrdersDispatcherTimer = new DispatcherTimer();
_autoAddMenstruumOrdersDispatcherTimer.Interval = new TimeSpan(500);
_autoAddMenstruumOrdersDispatcherTimer.Tick += delegate { this.AutoAddMenstruumOrders(); };
_autoAddMenstruumOrdersDispatcherTimer.IsEnabled = true;
}
return _autoAddMenstruumOrdersDispatcherTimer;
}
}
private void AutoAddMenstruumOrders()
{
if (_menstruumOrders.Count == 0) { return; }
MenstruumOrdersDispatcherTimer.Stop();
foreach (var kvp in _menstruumOrders)
{
foreach (IOrderRequestRevision order in kvp.Value)
{
AddOrderItemInGrid(order, kvp.Key);
}
}
_menstruumOrders.Clear();
}
二、在使用的地方可以参考下图:
浙公网安备 33010602011771号