zoukankan      html  css  js  c++  java
  • uwp,c#,mediaElement与slider进度条绑定

    虽然微软uwp官方已停止对传统媒体控件mediaElement的update,新控件为mediaPlayerElement和mediaPlayer[官方word:https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/media-playback].

    这里阐述的是传统媒体控件MediaElement和自定义进度条slider的绑定内容。(mediaPlayerElement是否也适用,小生没有实测)

    首先写一个类,叫做控制器,之后在XAML里进行绑定

    class ProgressConvert : IValueConverter
    
        {
    
            public object Convert(object value, Type targetType, object parameter, string language)
    
            {
    
                return ((TimeSpan)value).TotalSeconds;
    
            }
    
    
    
            public object ConvertBack(object value, Type targetType, object parameter, string language)
    
            {
    
                return TimeSpan.FromSeconds((double)value);
    
            }
    
        }

    据我所知,这个控制器是通用版的,需要时直接搬运。

    直接在Page.Resources里调用,这里我需要引用命名空间,自己根据自己实际情况。

    xmlns:modle="using:VideoPlayer.Modle"
    
    <Page.Resources>
    <ResourceDictionary>
    <modle:ProgressConvert x:Key="progressConvert"/>
    </ResourceDictionary>
    </Page.Resources>
    

    下面是MediaElement和Slider控件的绑定了

    
    <MediaElement x:Name="main_mediaElement" AutoPlay="False" AreTransportControlsEnabled="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
    
     <Slider x:Name="progress_slider" ManipulationMode="Rotate" Style="{StaticResource MediaSliderStyle}" Grid.Column="1" Minimum="0" IsThumbToolTipEnabled="False" VerticalAlignment="Center" Value="{Binding ElementName=main_mediaElement,Path=Position,Converter={StaticResource progressConvert},Mode=TwoWay}" Margin="10,0,10,-5"/>

    这里直接搬用了我的源码,有些属性不用管,主要了解Binding这块。

    MediaElement的AreTransportControlEnabled=False将禁用自带的播放控件,自带的当然是自动绑定的了,当想自定义播放控件时,可以使用这个方案。

  • 相关阅读:
    MySQL版本详解
    数据库安全[一]
    python itertools模块学习
    两列布局实例
    Linux 原始套接字抓包实例
    [转]Linux终端快捷键
    SQL中的LEFT JOIN 和 RIGHT JOIN 以及INNER JOIN
    twisted框架入门笔记(1)
    一个关于lambda的题目
    找出数组中仅仅一个出现两次的数
  • 原文地址:https://www.cnblogs.com/singhwong/p/11918455.html
Copyright © 2011-2022 走看看