블로그 이미지
Kanais
Researcher & Developer 퍼즐을 완성하려면 퍼즐 조각들을 하나 둘씩 맞춰나가야 한다. 인생의 퍼즐 조각들을 하나 둘씩 맞춰나가다 보면 인생이란 퍼즐도 완성되는 날이 오려나...?

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Notice

2020. 12. 14. 09:40 Programming/WPF
작성 날짜 : 2020.12.14
운영체제 : Windows10
개발툴 : Visual Studio 2019 Community
.NET Framework ver : 4.7.2

 

출처 : m.blog.naver.com/PostView.nhn?blogId=ljy5745&logNo=220496188019&proxyReferer=https:%2F%2Fwww.google.com%2F

 

[WPF]동영상 재생(무한재생)

[cs] public MainWindow() {  InitializeComponent(); this.startMedia.Play(); this.startMedia.Me...

blog.naver.com

참고 : uxpro.tistory.com/161

 

MediaElement 반복 재생

실버라이트에서 미디어를 재생하는데 가장 많인 쓰이는 컨트롤로 MediaElement 가 있습니다. MediaElement의 기본 속성으로 AutoPlay가 있어서 Source부분에 경로를 선언해주거나 바인딩해주면 1회 재생에

uxpro.tistory.com

xaml

<StackPanel>
      <MediaElement x:Name="ME_Player" Stretch="Fill" Height="1920" Source="C:/Users/y/Pictures/ad/video4.mp4" 
                    IsVisibleChanged="ME_Player_IsVisibleChanged"
                    LoadedBehavior="Manual" MediaEnded="MediaElement_MediaEnded"/>
      <ContentControl Content="{Binding MediaElementControl, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>

MediaElement Source에 동영상 경로 넣어주고 LoadedBehavior 속성은 필수로 (여기서 한 무한재생 방법에서는 Manual로 설정해줘야만 함)

MediaEnded는 이벤트로 xaml.cs 소스코드에 정의해줌.

 

xaml.cs

public DisplayView()
{
    InitializeComponent();

    ME_Player.MediaEnded += new RoutedEventHandler(MediaElement_MediaEnded);
    ME_Player.Play();
}

private void MediaElement_MediaEnded(object sender, RoutedEventArgs e)
{
    this.ME_Player.Stop();
    this.ME_Player.Position = TimeSpan.FromSeconds(0);
    this.ME_Player.Play();
}

선언자 부분에 MediaElement.Play()를 해줘야 무한재생됨.

 

MediaElement.Position 설정이나 MediaElement.Stop() 둘 중 하나만 해줘도 무한재생됨.

posted by Kanais