0

我在使用 NAUDIO 类库WaveformTimeLineWPF 声音可视化库中使用该类时遇到问题。我已按照他们在文档中提供的说明进行操作,但它对我不起作用。

我背后的代码如下:

public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private OpenFileDialog dialogBox = new OpenFileDialog();

        private void open_Click(object sender, RoutedEventArgs e)
        {
            //Get Audio File
            dialogBox.Filter = "Wave File (*.mp3 ; *.wav) | *.mp3;*.wav;";
            if (dialogBox.ShowDialog() == true)
            {
                NAudioEngine.Instance.OpenFile(dialogBox.FileName);
                fileLocation = dialogBox.FileName;
            }

            var soundEngine = NAudioEngine.Instance;
            soundEngine.PropertyChanged += NAudioEngine_PropertyChanged;
            soundEngine.OpenFile(fileLocation);
            if (NAudioEngine.Instance.CanPlay) NAudioEngine.Instance.Play();
            myWave = new WaveformTimeline();
            myWave.RegisterSoundPlayer(soundEngine);
        }

该代码不会引发任何错误,但它也不会做任何事情。有此 API 或类似 API 经验的人可以帮我解决这个问题。

4

1 回答 1

0

关键错误是线路

myWave = new WaveformTimeline();

在 XAML 设计视图中添加 WaveformTimeline 控件后,您无需在后面的代码中再次初始化该控件,因为您将获得 WaveformTimeline 对象的另一个实例。

于 2013-06-19T17:51:47.397 回答