UWP C#将音频设备信息显示到文本块
从UWP C#将音频设备信息显示到文本块,c#,xaml,uwp,raspberry-pi3,windows-iot-core-10,C#,Xaml,Uwp,Raspberry Pi3,Windows Iot Core 10,从ApplicationDataContainer 从列表框中选择时,设备ID能够正确显示在文本块 private void audioRenderList_P_SelectionChanged(object sender, SelectionChangedEventArgs e) { mediaPlayer_CH1.AudioDevice = renderDeviceList_P[audioRenderList_P.SelectedIndex]; ren
ApplicationDataContainer
从列表框
中选择时,设备ID
能够正确显示在文本块
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;
}
但是,加载保存的音频设备ID
时,无法将其显示为可读字符
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
事件中,您将显示名称并保存Id。但是当加载时,您显示的是Id,它们是不同的
加载时,您可以将代码更改为:
var audioSource=localSettings.Values[“audioRenderSettings\u P”]作为字符串;
mediaPlayer_CH1.AudioDevice=等待设备信息。CreateFromIdAsync(音频源);
renderDeviceName_P.Text=mediaPlayer_CH1.AudioDevice.Name.ToString();
问候。另一个问题,因为我正在为
音频渲染设备执行此操作。音频捕获设备有什么区别吗?