Witam, od paru dni głowię się nad pewnym problemem, a z racji mojej małej biegłości w posługiwaniu się C# stoję w dołku i głupio gapię się na padający na mnie deszcz.
"Stworzyłem" prostą aplikację w VS10 korzystającą z komponentu WMP - do tego dodałem guzik, który pozwala załadować jedną lub więcej mptrójek do 'listy odtwarzania' na którą składa się listbox; następnie po kliknięciu na pozycję w listboxie odtwarza się ona w wmp. Wszystko działa fajnie, do czasu gdy do już istniejących piosenek na liście chcę dodać nowe - owszem, pojawiają się one na niej, ale gdy klikam w którąkolwiek z tych nowych to program wywala się z błędem Index was outside the bounds of the array wskazującym na linijkę z kodem: axWindowsMediaPlayer1.URL = path[listBox1.SelectedIndex]; - te, które zostały dodane w pierwszej 'turze' dalej bezproblemowo się odtwarzają.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Odtwarzacz_Mp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
{
}
private void tableLayoutPanel1_Paint(object sender, PaintEventArgs e)
{
}
string[] pliki, path;
private void button1_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
pliki = openFileDialog1.SafeFileNames;
path = openFileDialog1.FileNames;
for (int i = 0; i < pliki.Length; i++)
{
listBox1.Items.Add(pliki[i]);
}
}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
axWindowsMediaPlayer1.URL = path[listBox1.SelectedIndex];
}
}
}
Na początku myślałem, że jest to wina samego dodawania do listy, dlatego kombinowałem ze zmienną i, aby nie resetowała się ona przy kolejnym dodawaniu, wtedy jednak pojawił się inny problem: gdy w pierwszej turze dodałem 3 pliki to w drugiej musiałem dodać minimum 4, aby ten 4 pojawił się na liście - początkowe były obcinane. Co ciekawsze, ten 4 dodany plik normalnie został odtworzony i powyższy błąd się nie pojawił.
Przeszukałem już wiele stron starając się znaleźć błędy powiązane z Index was outside bla bla, ale nic mi to nie pomogło, dlatego też zwracam się z prośbą w tym miejscu. Mam nadzieję, że znajdzie się ktoś kto mnie oświeci i wyprowadzi z tej ciemności niewiedzy.
Pozdrawiam.