Есть ли способ воспроизвести видео в Windows Media Control? - PullRequest
0 голосов
/ 07 декабря 2010

Как я могу воспроизвести видео в элементе управления Windows Media?Я пытаюсь сделать это таким образом?но это не работает

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, System.EventArgs e)
    {
        //mediaPlayer.currentPlaylist = mediaPlayer.mediaCollection.getByName("Dastan");
        //mediaPlayer.URL = @"C:\Documents and Settings\Администратор\Мои документы\Моя музыка\Мои списки воспроизведения\Dastan.wpl";
        //mediaPlayer.uiMode = "none";
        PlayFile(@"C:\Documents and Settings\Администратор\Мои документы\Моя музыка\Мои списки воспроизведения\Dastan.wpl");
    }

    private void mediaPlayer_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
    {
        if ((WMPLib.WMPPlayState)e.newState == WMPPlayState.wmppsPlaying)
        {
            mediaPlayer.fullScreen = true;
            mediaPlayer.Ctlenabled = false;
        }
        else if ((WMPLib.WMPPlayState)e.newState == WMPPlayState.wmppsMediaEnded)
        {
            Form1_Load(null, null);
        }
    }
    private void PlayFile(String url)
    {
        mediaPlayer.URL = url;
        mediaPlayer.Ctlcontrols.play();
    }

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 08 декабря 2010
mediaPlayer.settings.setMode("loop", true); 

Этот фрагмент кода выполняет всю работу. Спасибо за ответы ..

0 голосов
/ 08 декабря 2010

Попробуйте установить mediaPlayer.Ctlcontrols.currentPosition в 0.

private void mediaPlayer_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
{
    if ((WMPLib.WMPPlayState)e.newState == WMPPlayState.wmppsPlaying)
    {
        mediaPlayer.fullScreen = true;
        mediaPlayer.Ctlenabled = false;
    }
    else if ((WMPLib.WMPPlayState)e.newState == WMPPlayState.wmppsMediaEnded)
    {
        mediaPlayer.Ctlcontrols.currentPosition = 0;
        mediaPlayer.Ctlcontrols.play();
    }
}
...