3 Stimmen

Wie kann man mit axmediaplayer das nächste Element der Wiedergabeliste abspielen?

Ok, ich habe eine Frage, ich habe diesen Code gemacht, um den Axmediaplayer auf der Basis des in der Listbox aufgeführten Elements abzuspielen. Zuerst mache ich diesen Code, um eine Liste mit openDialog zu erstellen:

 private string[] files, path;
 private void button1_Click(object sender, EventArgs e)
    {
        if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
        {
            files = openFileDialog1.SafeFileNames;
            path = openFileDialog1.FileNames;
            for (int i = 0; i < files.Length; i++) {
                listBox1.Items.Add(files[i]);
            }
        }
    }

und dann wird die Musik abgespielt, wenn sich der Index der Listbox ändert (wenn das Element in der Listbox angeklickt wird), indem dieser Code verwendet wird:

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    axWindowsMediaPlayer1.URL = path[listBox1.SelectedIndex];
}

es funktioniert gut, und dann möchte ich Player automove zum nächsten Song basierend auf Element auf meiner Listbox. mit mit Ereignissen PlayStateChange, so mache ich diesen Code

private void axWindowsMediaPlayer1_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
{
    if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsMediaEnded) 
    {
         if(listBox1.SelectedIndex < files.Length - 1)
         {
            listBox1.SelectedIndex = listBox1.SelectedIndex + 1;
         }
    }
}

der ausgewählte index ändert sich, aber der player spielt nicht automatisch den nächsten titel ab. ich muss manuell auf die abspieltaste klicken, um die liste abzuspielen. kann mir jemand weiterhelfen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X