下面的代码每次点击一个按钮时触发。它有效,但我意识到我不应该每次播放声音时检查声音状态和音量。然而,我似乎无法弄清楚如何让ViewModel以任何其他方式更新ApplicationData。我有一个Settings ViewModel,它使用切换开关设置声音状态,并为音量设置滑块。如何在ApplicationData设置更改时更新ViewModel类变量?
理想的情况下,我认为,当导航回视图模型将更新类变量,或设置视图模型会调用这个视图模型的更新方法。但我似乎无法让它工作,除了在PlaySound方法中更新它。
public object localSettingSoundState;
public object localSoundVolumeSetting;
ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;
public void PlaySound(MediaElement mediaElementName)
{
localSettingSoundState = localSettings.Values["localSoundSetting"];
MediaElementVolume = Convert.ToDouble(localSettings.Values["localSoundVolumeSetting"]);
if (localSettingSoundState.ToString() != "false")
{
mediaElementName.Play();
}
}
_What_视图模型? – MickyD
您尚未向任何人提供足够的信息来帮助您解决问题。您的描述对读者而言很模糊,并且您没有提供ViewModel。 –