1234567891011121314151617181920212223242526 |
- using System;
- using System.Windows.Threading;
- namespace MediaBrowser.UI.Extensions
- {
- public static class Extensions
- {
- /// <summary>
- /// Invokes an action after a specified delay
- /// </summary>
- /// <param name="dispatcher">The dispatcher.</param>
- /// <param name="action">The action.</param>
- /// <param name="delayMs">The delay ms.</param>
- public static void InvokeWithDelay(this Dispatcher dispatcher, Action action, long delayMs)
- {
- var timer = new DispatcherTimer(DispatcherPriority.Normal, dispatcher);
- timer.Interval = TimeSpan.FromMilliseconds(delayMs);
- timer.Tick += (sender, args) =>
- {
- timer.Stop();
- action();
- };
- timer.Start();
- }
- }
- }
|