[英]UWP C# To Display AudioDevice DeviceInformation to Textblock
当我从ApplicationDataContainer
加载它时,我在文本块上显示我保存的textblock
音频适配器名称时遇到一些问题
从listbox
选择时, deviceId
能够正确显示在textblock
上
private void audioRenderList_P_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
mediaPlayer_CH1.AudioDevice = renderDeviceList_P[audioRenderList_P.SelectedIndex];
renderDeviceName_P.Text = renderDeviceList_P[audioRenderList_P.SelectedIndex].Name.ToString();
}
if (mediaPlayer_CH1.AudioDevice.Id != null)
{
Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
localSettings.Values["audioRenderSettings_P"] = mediaPlayer_CH1.AudioDevice.Id;
}
但是,在加载保存的音频deviceId
时,它无法显示为可读字符;
Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
if (localSettings.Values["audioRenderSettings_P"] != null)
{
var audioSource = localSettings.Values["audioRenderSettings_P"] as string;
mediaPlayer_CH1.AudioDevice = await DeviceInformation.CreateFromIdAsync(audioSource);
renderDeviceName_P.Text = audioSource;
}
else renderDeviceName_P.Text = "Select Audio Device ..";
请帮忙。 谢谢你。
在SelectionChanged
事件中,您将显示Name并保存Id 。 但是在加载时,您显示的是Id ,它们是不一样的。
加载时,您可以将代码更改为:
var audioSource = localSettings.Values["audioRenderSettings_P"] as string;
mediaPlayer_CH1.AudioDevice = await DeviceInformation.CreateFromIdAsync(audioSource);
renderDeviceName_P.Text = mediaPlayer_CH1.AudioDevice.Name.ToString();
此致。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.