Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UWP C#将音频设备信息显示到文本块_C#_Xaml_Uwp_Raspberry Pi3_Windows Iot Core 10 - Fatal编程技术网

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();

问候。

另一个问题,因为我正在为
音频渲染设备执行此操作。
音频捕获设备有什么区别吗?