fix: 资源重载后资源版本界面显示仍为旧版本

This commit is contained in:
uye
2025-02-14 17:42:18 +08:00
parent 439e77d68d
commit 3a4d5c532c
5 changed files with 21 additions and 5 deletions

View File

@@ -1577,6 +1577,7 @@ namespace MaaWpfGui.Main
{
Instances.AsstProxy.LoadResource();
DataHelper.ReloadBattleData();
SettingsViewModel.VersionUpdateSettings.ResourceInfoUpdate();
ToastNotification.ShowDirect(LocalizationHelper.GetString("GameResourceUpdated"));
}
});

View File

@@ -478,6 +478,7 @@ namespace MaaWpfGui.ViewModels.UI
{
Instances.AsstProxy.LoadResource();
DataHelper.ReloadBattleData();
SettingsViewModel.VersionUpdateSettings.ResourceInfoUpdate();
ToastNotification.ShowDirect(LocalizationHelper.GetString("GameResourceUpdated"));
}

View File

@@ -487,6 +487,7 @@ public class VersionUpdateViewModel : Screen
{
Instances.AsstProxy.LoadResource();
DataHelper.ReloadBattleData();
SettingsViewModel.VersionUpdateSettings.ResourceInfoUpdate();
ToastNotification.ShowDirect(LocalizationHelper.GetString("GameResourceUpdated"));
}
}

View File

@@ -64,9 +64,7 @@ public class GameSettingsUserControlModel : PropertyChangedBase
{
SetAndNotify(ref _clientType, value);
ConfigurationHelper.SetValue(ConfigurationKeys.ClientType, value);
VersionUpdateSettings.ResourceInfo = VersionUpdateSettingsUserControlModel.GetResourceVersionByClientType(_clientType);
VersionUpdateSettings.ResourceVersion = VersionUpdateSettings.ResourceInfo.VersionName;
VersionUpdateSettings.ResourceDateTime = VersionUpdateSettings.ResourceInfo.DateTime;
VersionUpdateSettings.ResourceInfoUpdate();
Instances.SettingsViewModel.UpdateWindowTitle(); // 每次修改客户端时更新WindowTitle
Instances.TaskQueueViewModel.UpdateStageList();
Instances.TaskQueueViewModel.UpdateDatePrompt();

View File

@@ -86,7 +86,7 @@ public class VersionUpdateSettingsUserControlModel : PropertyChangedBase
public static string BuildDateTimeCurrentCultureString => BuildDateTime.ToLocalTimeString();
private static (DateTime DateTime, string VersionName) _resourceInfo = GetResourceVersionByClientType(ConfigurationHelper.GetValue(ConfigurationKeys.ClientType, string.Empty));
private static (DateTime DateTime, string VersionName) _resourceInfo = GetResourceVersionByClientType(SettingsViewModel.GameSettings.ClientType);
public (DateTime DateTime, string VersionName) ResourceInfo
{
@@ -113,7 +113,21 @@ public class VersionUpdateSettingsUserControlModel : PropertyChangedBase
set => SetAndNotify(ref _resourceDateTime, value);
}
public string ResourceDateTimeCurrentCultureString => ResourceDateTime.ToLocalTimeString();
private string _resourceDateTimeCurrentCultureString = _resourceDateTime.ToLocalTimeString();
public string ResourceDateTimeCurrentCultureString
{
get => _resourceDateTimeCurrentCultureString;
set => SetAndNotify(ref _resourceDateTimeCurrentCultureString, value);
}
public void ResourceInfoUpdate()
{
ResourceInfo = GetResourceVersionByClientType(SettingsViewModel.GameSettings.ClientType);
ResourceVersion = ResourceInfo.VersionName;
ResourceDateTime = ResourceInfo.DateTime;
ResourceDateTimeCurrentCultureString = ResourceDateTime.ToLocalTimeString();
}
public static (DateTime DateTime, string VersionName) GetResourceVersionByClientType(string clientType)
{
@@ -430,6 +444,7 @@ public class VersionUpdateSettingsUserControlModel : PropertyChangedBase
{
Instances.AsstProxy.LoadResource();
DataHelper.ReloadBattleData();
SettingsViewModel.VersionUpdateSettings.ResourceInfoUpdate();
ToastNotification.ShowDirect(LocalizationHelper.GetString("GameResourceUpdated"));
}