我在运行时使用ListBox
添加了LinkLabel
目录中的播放列表名称,但现在我希望当我点击该播放列表的LinkLabel
时,播放列表应该跑,播放歌曲。
我不知道如何在链接标签中提供播放列表的路径或链接以及如何开始播放。
这是我的代码,playlistviewbar
是ListBox
:
string[] array1 = Directory.GetFiles(@"C:\Users\LENOVO\Music\Playlists","*.wpl");
int yforlbl =5;
LinkLabel[] lblplayName = new LinkLabel[array1.Length];
for (int i = 0; i < array1.Length; i++)
{
array1[i] = Path.GetFileName(array1[i]);
lblplayName[i] = new LinkLabel();
lblplayName[i].Text = array1[i];
lblplayName[i].Location = new Point(0,yforlbl);
playlistviewbar.Controls.Add(lblplayName[i]);
yforlbl += 23;
}
答案 0 :(得分:1)
在LinkLabel
的{{1}}事件处理程序中,您可以执行以下操作:
Click
由于private void LinkLabel_Click(object sender, System.EventArgs e)
{
LinkLabel label = (LinkLabel)sender;
string PlayListFile = label.Text;
Process.Start(PlayListFile);
}
文件与Windows Media Player相关联,因此应立即启动。您可以找到有关*.wpl
方法on MSDN的更多信息。
如果您想在应用程序中嵌入Process.Start
控件,那么您可以查看this article。
答案 1 :(得分:0)
好吧,我在for循环中得到它,双击事件是这样的,使用getbyname
mathod获取播放列表并将其设置为当前播放列表
lblplayName[i].DoubleClick += (senders, es) =>
{
LinkLabel label = (LinkLabel)senders;
string PlayListFile = label.Text;
try
{
WMPLib.IWMPPlaylist list = axWindowsMediaPlayer1.playlistCollection.getByName(PlayListFile).Item(0);
axWindowsMediaPlayer1.currentPlaylist = list;
}
catch
{
//exception handling code
}
};