private void AnimateNextRearrange()
{
if (this.rearrangeQueue.Count > 0)
{
KeyValuePair<Action, Duration> nextRearrange = this.rearrangeQueue.Dequeue();
this.Dispatcher.BeginInvoke(() =>
this.AnimateRearrangeInternal(nextRearrange.Key, nextRearrange.Value));
}
else
{
this.rearrangeQueue = null;
}
}