您好如何使用资源中的音乐创建List<SystemSound>
?
我试试这个,但我得到以下异常:
List<System.Media.SystemSound> music = new List<System.Media.SystemSound>
{
global::Launcher.Properties.Resources.music_quit_1,
global::Launcher.Properties.Resources.music_quit_2,
global::Launcher.Properties.Resources.music_quit_3,
global::Launcher.Properties.Resources.music_quit_4,
};
“参数1:无法从System.IO.UnmanagedMemoryStream转换为 System.Media.SystemSound“。
从那以后我会随机播放音乐并播放后。
答案 0 :(得分:1)
此类System.Media.SystemSound
未以此方式使用,此类仅用于表示系统声音类型,例如Asterisk
,Beep
,{{ 1}},Hand
或Question
。可以通过Exclamation
播放系统声音。
示例强>
SystemSounds
此示例将播放系统声音 SystemSounds.Asterisk.Play();
。这类似于Asterisk
,因为您不能说System.Drawing.Brush
,但您可以说System.Drawing.Brush.Black
。 System.Drawing.Brushes.Black
仅用于在名为System.Drawing.Brush
的新类中将名称Black
的对象定义为颜色System.Drawing.Brushes
。我们可以在Black
System.Drawing.Brushes
此外,如果你想播放一个新的 Wave Sound ,你可以创建一个新的//
// Summary:
// Gets a system-defined System.Drawing.Brush object.
//
// Returns:
// A System.Drawing.Brush object set to a system-defined color.
public static Brush Black { get; }
类来控制 Sound Wave中声音的播放(。wav)文件
示例强>
SoundPlayer
如果您仍想使用Generic SoundPlayer _SoundPlayer = new SoundPlayer(); //Initializes a new SoundPlayer of name _SoundPlayer
_SoundPlayer.SoundLocation = @"D:\Resources\International\Greetings.wav"; //Sets the target Wave Sound file to D:\...\Greetings.wav
_SoundPlayer.Play(); //Plays the target Wave Sound file
。然后,也许以下示例可能会帮助您
示例强>
List
注意:List<string> WaveSoundCollections = new List<string> { @"D:\Resources\International\Greetings.wav", @"D:\Resources\International\Good-Bye.wav" }; //Initializes a new Generic Collection of class List of type string and injecting TWO strings into the Generic Collection
SoundPlayer NewPlayer = new SoundPlayer(); //Initializes a new SoundPlayer
if (Client.Start) //Client refers to a particular Class that has Start and End as bool
{
NewPlayer.SoundLocation = WaveSoundCollections[0]; //Set the SoundLocation of NewPlayer to D:\Resources\International\Greetings.wav
NewPlayer.Play(); //Plays the target Wave Sound file
}
else if (Client.End)
{
NewPlayer.SoundLocation = WaveSoundCollections[1]; //Set the SoundLocation of NewPlayer to D:\Resources\International\Good-Bye.wav
NewPlayer.Play(); //Plays the target Wave Sound file
}
仅用于播放 Wave Sound 文件。如果您想播放其他媒体文件,例如 .mp3 , .mpeg 等等,那么您可以使用SoundPlayer
来导入System.Windows.Media.MediaPlayer
创建一个新类Object Browser
并播放特定文件。
示例强>
MediaPlayer
重要:要使用string TargetFile = @"D:\File.mp3";
MediaPlayer _MediaPlayer = new MediaPlayer();
_MediaPlayer.Open(new Uri(TargetFile));
_MediaPlayer.Play();
,您必须添加MediaPlayer
的新引用。
要添加WindowsBase
的新引用,请尝试以下操作:
确保您刚刚添加的新引用的名称为复制本地的bool属性设置为 True ,以便客户端不会在初始化期间遇到错误
谢谢, 我希望你觉得这很有帮助:)