コード例 #1
0
        public MainWindow()
        {
            var exeVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;

            if (exeVersion > new Version(Settings.Default.SettingsVersion))
            {
                Settings.Default.Upgrade();
            }

            Settings.Default.SettingsVersion = exeVersion.ToString();
            Settings.Default.Save();

            try
            {
                // Load app theme and accent
                var currentTheme  = ThemeManager.GetAppTheme(Settings.Default.AppTheme);
                var currentAccent = ThemeManager.GetAccent(Settings.Default.AppAccent);

                ThemeManager.ChangeAppStyle(Application.Current, currentAccent, currentTheme);
            }
            catch
            {
                // Theme error, revert to default
                Settings.Default.AppTheme  = "BaseLight";
                Settings.Default.AppAccent = "Blue";

                Settings.Default.Save();

                var currentTheme  = ThemeManager.GetAppTheme(Settings.Default.AppTheme);
                var currentAccent = ThemeManager.GetAccent(Settings.Default.AppAccent);

                ThemeManager.ChangeAppStyle(Application.Current, currentAccent, currentTheme);
            }

            InitializeComponent();
            var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;

            Title = string.Format(Title, $"{version.Major}.{version.Minor}.{version.Build}");


            Flyouts = new FlyoutsControl();
            Flyouts.Items.Add(_configFlyout);

            // Only show the donation message once every 3 days
            if (!Settings.Default.NeverShowDonation && (Settings.Default.DonationMessage < (DateTime.Now - new TimeSpan(3, 0, 0, 0)) || Debugger.IsAttached))
            {
                // Show donation message
                var _donateFlyout = new DonateFlyout();
                Flyouts.Items.Add(_donateFlyout);
                _donateFlyout.IsOpen             = true;
                Settings.Default.DonationMessage = DateTime.Now;
                Settings.Default.Save();
            }
        }
コード例 #2
0
 public void DonateLink_Click(object sender, RoutedEventArgs e)
 {
     DonateFlyout.ShowAt(sender as FrameworkElement);
 }