在wpf中单击按钮时播放wav声音
我想在我的整个应用程序中用我的按钮点击事件的点击事件播放声音 当我点击按钮时,我发现了1个播放声音的代码在wpf中单击按钮时播放wav声音,wpf,Wpf,我想在我的整个应用程序中用我的按钮点击事件的点击事件播放声音 当我点击按钮时,我发现了1个播放声音的代码 private void btn_Click(object sender, RoutedEventArgs e) { MediaPlayer mplayer = new MediaPlayer(); mplayer.Open(new Uri("ding.wav", UriKind.Relative)); mplayer.Play();
private void btn_Click(object sender, RoutedEventArgs e)
{
MediaPlayer mplayer = new MediaPlayer();
mplayer.Open(new Uri("ding.wav", UriKind.Relative));
mplayer.Play();
//our code...
}
我知道这不是正确的解决方案,所以请告诉我是否还有其他解决方案,因为我必须为每个按钮点击事件及其繁琐的工作写这3行
请帮忙解决这个问题
等待答复
提前感谢只需定义一种在事件中播放声音的风格
PreviewMouseDown
:
<Style TargetType="Button">
<Style.Triggers>
<EventTrigger RoutedEvent="PreviewMouseDown">
<SoundPlayerAction Source="/ClickingButton;component/click.wav" />
</EventTrigger>
</Style.Triggers>
</Style>
有关为什么不使用
按钮的讨论,请参阅。单击事件触发器中的事件。基本上,问题是,按钮.Click
事件是一个冒泡的事件,事件触发器将在正常的Click处理程序中的代码执行后执行,即,如果事件处理程序做了一些需要花费一些时间的事情,则声音将有延迟。我将此代码放在标记之间时出错。无法加载文件或程序集“ClickingButton,Culture=neutral”或其依赖项之一。系统找不到指定的文件。确定。你需要根据你的需要改变它。。。有关此属性,请参见MSDN中的备注: