I am creating a simple MP3 player for a project, and I want to make my software play mp3 sounds. I got a dropdown combobox and a play button. What I want is the selected song to play, when the play button is pushed. (After this I am also going to script pause, next and so on buttons.
Picutre of layout:
And current code for the combobox to display the song names:
namespace Jukebox___Eksamensprojekt
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void cbSange_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
string[] files = System.IO.Directory.GetFiles(@"C:\Programmer\Jukebox\Songs"); //Henstiller til mappen med sange
for (int i = 0; i < files.Length; i++)
{
int temp = 28; //Kan ændre på tallet for at redigere hvad outputtet bliver i comboboxen
files[i] = files[i].Substring(temp, (files[i].Length - temp)); //Sørger for jeg kun får sangnavn som output
}
this.cbSange.Items.AddRange(files);
}
}
}
EDIT: Specific question is, I have a ComboBox in which I select files (Shown in code), I also got the play button shown on the picture. What I want is, when the play button is clicked selected song will play.
EDIT. Complete code with cbSange error:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Jukebox___Eksamensprojekt
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public class AudioItem
{
public string Name { get; set; }
public string Path { get; set; }
private void Form1_Load(object sender, EventArgs e)
{
this.cbSange.DisplayMember = "Name";
var path = @"C:\Programmer\Jukebox\Songs";
var files = System.IO.Directory.GetFiles(path);
foreach (var file in files)
{
var item = new AudioItem
{
Name = System.IO.Path.GetFileNameWithoutExtension(file),
Path = file
};
this.cbSange.Items.Add(item);
}
}
private void cbSongs_SelectedIndexChanged(object sender, EventArgs e)
{
var selectedItem = cbSange.SelectedItem;
if (selectedItem != null)
{
var audioItem = (AudioItem)selectedItem;
var filePath = audioItem.Path;
//Use 'filePath' to open the file
}
}
}
}
}