Symphonary.NWGUI.Open_Clicked C# (CSharp) Method

Open_Clicked() private method

Event handler for "Open" menu item
private Open_Clicked ( object sender, RoutedEventArgs e ) : void
sender object
e System.Windows.RoutedEventArgs
return void
        private void Open_Clicked(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Filter = "MIDI Files (*.mid)|*.mid|All Files (*.*)|*.*";
            openFileDialog.FilterIndex = 1;

            if (openFileDialog.ShowDialog().Value) {
                try {
                    midiPlayer.OnClosingOperations();
                    midiPlayer.OnClosedOperations();
                } catch (NullReferenceException ex) { }

                HideSubCanvas();
                ResetSubCanvas(true);

                HideCanvasChildren();

                b_AnimationStarted = false;
                CompositionTarget.Rendering -= MoveCanvas;
                CompositionTarget.Rendering -= CanvasNotesScheduledAdder;
                normal.Visibility = Visibility.Hidden;
                try {
                    loadingScreen.Visibility = Visibility.Hidden;
                } catch (NullReferenceException ex) { }

                listViewGrid.Visibility = Visibility.Hidden;
                loadingScreen.Visibility = Visibility.Visible;
                i_Channel = -1;

                midiPlayer = new MidiPlayer(
                    openFileDialog.FileName,
                    HandleMIDILoadProgressChanged,
                    HandleMIDILoadCompleted,
                    HandleMIDIChannelMessagePlayed,
                    HandleMIDIPlayingCompleted);
                //midiPlayerForPreview = new MidiPlayer(midiPlayer.Sequence, midiPlayer.Sequencer);

                midiPlayer.PlayOtherChannels = true;

                midiInfo.Refresh(openFileDialog.FileName, i_Channel);
                tb_listViewTitle.Text = midiInfo.Title;
            }
        }