簡體   English   中英

如何禁用MediaTransportControls(UWP)中的下一個和上一個按鈕

[英]How to disable next and previous buttons in MediaTransportControls (UWP)

我正在MediaPlayerElement設置播放列表,如下所示,但是我發現無法禁用previousnext曲目按鈕。

MediaPlayerElement的上一個和下一個按鈕

更令人驚訝的是,整個過程與操作系統級別的System Media Trasport Control集成得非常好,即,當我在第一個或最后一個軌道時,上一個和下一個按鈕會自動禁用。

SMTC控制視圖 在此處輸入圖片說明

<MediaPlayerElement x:Name="MediaPlayerElement" AreTransportControlsEnabled="True">
    <MediaPlayerElement.TransportControls>
        <MediaTransportControls
            IsFullWindowButtonVisible="False"
            IsNextTrackButtonVisible="True"
            IsPreviousTrackButtonVisible="True"
            IsZoomButtonVisible="False" />
    </MediaPlayerElement.TransportControls>
</MediaPlayerElement>
var playbackList = new MediaPlaybackList();

var total = (uint)episodes.Count();

uint track = 0;
foreach (var episode in episodes)
{
    var mediaPlaybackItem = new MediaPlaybackItem(MediaSource.CreateFromUri(new Uri(episode.MediaUrl)));

    var props = mediaPlaybackItem.GetDisplayProperties();
    props.Type = Windows.Media.MediaPlaybackType.Music;
    props.Thumbnail = RandomAccessStreamReference.CreateFromUri(new Uri(episode.ImageUrl));
    props.MusicProperties.Title = episode.Title;
    props.MusicProperties.Artist = episode.Author;
    props.MusicProperties.AlbumTrackCount = total;
    props.MusicProperties.TrackNumber = ++track;
    mediaPlaybackItem.ApplyDisplayProperties(props);
    playbackList.Items.Add(mediaPlaybackItem);
}

MediaPlayer.Source = playbackList;

mediaPlayerElement.SetMediaPlayer(MediaPlayer);

您可以使用MediaPlaybackCommandManager類修改或完全覆蓋SMTC控件的行為。通過將“下一個/上一個”命令的EnablingRule設置為“從不”,可以禁用下一個或上一個命令。有關更多詳細信息,請參考文檔

player.CommandManager.NextBehavior.EnablingRule = MediaCommandEnablingRule.Never;
player.CommandManager.PreviousBehavior.EnablingRule = MediaCommandEnablingRule.Never;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM