using System; using System.Windows; using YY.Admin.Services; using Window = HandyControl.Controls.Window; namespace YY.Admin.Views { public partial class UpdateWindow : Window { public event Action UpdateRequested; public UpdateWindow() { InitializeComponent(); DataContext = this; } public string CurrentVersion { get; set; } = "1.0.0.0"; public string LatestVersion { get; set; } = "1.0.0"; public string PublishDate { get; set; } = DateTime.Now.ToString("yyyy-MM-dd"); public string Changelog { get; set; } = "暂无更新内容"; public string DownloadUrl { get; set; } = ""; public string ApplicationName { get; set; } = "应用程序"; public bool IsMandatory { get; set; } protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e) { base.OnPropertyChanged(e); if (e.Property == DataContextProperty && e.NewValue != null) { // 如果是强制更新,隐藏"稍后提醒"按钮并显示提示 if (IsMandatory) { MandatoryUpdatePanel.Visibility = Visibility.Visible; LaterButton.Visibility = Visibility.Collapsed; } } } private void UpdateButton_Click(object sender, RoutedEventArgs e) { UpdateRequested?.Invoke(DownloadUrl); DialogResult = true; Close(); } private void LaterButton_Click(object sender, RoutedEventArgs e) { DialogResult = false; Close(); } } }