为什么媒体源无法使用Safefilenames?

时间:2016-08-22 12:08:02

标签: c# wpf

我想将文件名(没有完整路径)添加到ListBox

Like This

以下代码运作顺畅,但当我将FileNames更改为SafeFileNames时(隐藏项目位置),它不再有效。

XAML

<MediaElement x:Name="mePlayer" Margin="64,0,90,61"/>
<ListBox x:Name="listbox4" Background="Salmon" BorderBrush="Black" BorderThickness="3"/>

CS

private void load_Click(object sender, RoutedEventArgs e)
{
    Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog();
    ofd.DefaultExt = ".mp3";
    ofd.Filter = "All|*.*";
    ofd.Multiselect = true;
    Nullable<bool> result = ofd.ShowDialog();
    if (result == true)
    {
        for (int i = 0; i < ofd.FileNames.Length; i++) 
        {
            listbox4.Items.Add(ofd.FileNames[i].ToString());
            listbox4.SelectedItem = ofd.FileName;
            mePlayer.Source = new Uri(
                listbox4.SelectedItem.ToString(), 
                UriKind.RelativeOrAbsolute);
            mePlayer.LoadedBehavior = MediaState.Play;    
        }                       
    }
}

1 个答案:

答案 0 :(得分:0)

此代码应该适合您。在继续之前,请阅读代码中的注释。

Faulting application name: test.exe, version: 1.0.0.1, time stamp: 0x56585459
Faulting module name: wkscli.dll, version: 6.1.7601.17514, time stamp: 0x4ce795a7 
Exception code: 0xc0000005 
Fault offset: 0x00001e8f 
Faulting process id: 0x%9 
Faulting application start time: 0x%10 
Faulting application path: %11 
Faulting module path: %12