private void InvalidateUpdateMenuSizes() { if (isInvalidated) return; isInvalidated = true; Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle,(ThreadStart)(()=> { isInvalidated = false; UpdateMenuSizes(); UpdateLayout(); })); }