public static void OpenPurchase(BoosterInfo booster, int[] cards) { logger.Trace("Open Purchase"); if (!ClientConfig.AlternativePurchaseWindow) { PurchaseAlternateWindow paw = new PurchaseAlternateWindow(Client.PurchaseAdmin, booster); paw.Show(); Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, new Action(() => paw.Activate())); paw.UpdateCards(cards); } else { _purchase = new Purchase(Client.PurchaseAdmin, booster); _purchase.Title = booster.Name; _purchase.Show(); Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, new Action(() => _purchase.Activate())); _purchase.UpdateCards(cards); } }