private static void EnsureValidState() { lock (s_initSyncRoot) { if (!s_stateSyncRoot) { s_lastMainWindow = Application.Current.MainWindow; s_dwmColorizationHelper = new DwmColorizationHelper(s_lastMainWindow); } else if (s_lastMainWindow != Application.Current.MainWindow) { s_dwmColorizationHelper.Dispose(); s_lastMainWindow = Application.Current.MainWindow; s_dwmColorizationHelper = new DwmColorizationHelper(s_lastMainWindow); } } }
public static Color GetColor() { EnsureValidState(); return(DwmColorizationHelper.GetWindowColorizationColor()); }