0

実行時にListBox使用するディレクトリからプレイリスト名を追加しましたが、そのプレイリストをクリックすると、プレイリストが実行され、曲を再生する必要があります。LinkLabelLinkLabel

リンク ラベルで再生リストへのパスまたはリンクを指定する方法と、再生を開始する方法がわかりません。

これは私のコード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;
}
4

2 に答える 2

1

のイベント ハンドラでは、次LinkLabelClickようなことができます。

private void LinkLabel_Click(object sender, System.EventArgs e)
{
    LinkLabel label = (LinkLabel)sender;
    string PlayListFile = label.Text;
    Process.Start(PlayListFile);
}

*.wplファイルは Windows Media Player に関連付けられているため、すぐに起動するはずです。Process.Startメソッドの詳細については、MSDN を参照してください。

MediaPlayerアプリケーションにコントロールを埋め込みたい場合は、この記事をご覧ください。

于 2013-03-06T08:36:52.323 に答える
0

わかりました、forループで取得しました。ダブルクリックイベントはこのようなもので、getbynamemathodを使用してプレイリストを取得し、現在のプレイリストに設定します

           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
               }
           };
于 2013-03-09T14:53:52.833 に答える