Use Window Activated and Deactivated event to control a media file : Window « Windows Presentation Foundation « VB.Net Tutorial






<Window x:Class="CustomMediaPlayerWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Custom Media Player"
    Activated="window_Activated"
    Deactivated="window_Deactivated"
    Closing="window_Closing">
  <DockPanel>
    <Menu DockPanel.Dock="Top">
      <MenuItem Header="_File">
        <MenuItem Header="_Exit" Click="exitMenu_Click" />
      </MenuItem>
    </Menu>
    <StackPanel DockPanel.Dock="Top" Orientation="Horizontal" HorizontalAlignment="Center">
      <Button Name="playButton" Click="playButton_Click">Play</Button>
      <Button Name="clickButton" Click="stopButton_Click">Stop</Button>
    </StackPanel>
    <MediaElement Stretch="Fill" Name="mediaElement" LoadedBehavior="Manual" Source="numbers.wmv" />
  </DockPanel>
</Window>
//File:Window.xaml.vb
Imports System
Imports System.ComponentModel
Imports System.Windows

Public Partial Class CustomMediaPlayerWindow
  Inherits Window
  Public Sub New()
    InitializeComponent()
  End Sub

  Private isMediaElementPlaying As Boolean

  Private Sub playButton_Click(sender As Object, e As RoutedEventArgs)
    Me.mediaElement.Play()
    Me.isMediaElementPlaying = True
  End Sub

  Private Sub stopButton_Click(sender As Object, e As RoutedEventArgs)
    Me.mediaElement.[Stop]()
    Me.isMediaElementPlaying = False
  End Sub

  Private Sub window_Activated(sender As Object, e As EventArgs)
    If Me.isMediaElementPlaying Then
      Me.mediaElement.Play()
    End If
  End Sub

  Private Sub window_Deactivated(sender As Object, e As EventArgs)
    If Me.isMediaElementPlaying Then
      Me.mediaElement.Pause()
    End If
  End Sub

  Private Sub exitMenu_Click(sender As Object, e As RoutedEventArgs)
    Me.Close()
  End Sub

  Private Sub window_Closing(sender As Object, e As CancelEventArgs)
    If Me.isMediaElementPlaying Then
      e.Cancel = True
    End If
  End Sub
End Class
WPF Use Window Activated And Deactivated Event To Control A Media File








16.57.Window
16.57.1.Custom WindowCustom Window
16.57.2.Set window size in XAMLSet window size in XAML
16.57.3.A simple user-login XAML pageA simple user-login XAML page
16.57.4.User login screen with no layout or formattingUser login screen with no layout or formatting
16.57.5.Automatically Size the Main Application Window to Accommodate Its ContentAutomatically Size the Main Application Window to Accommodate Its Content
16.57.6.Window OwnershipWindow Ownership
16.57.7.Creating the main panel and add to Window in CodeCreating the main panel and add to Window in Code
16.57.8.Show window based on button nameShow window based on button name
16.57.9.Set a Default ButtonSet a Default Button
16.57.10.Window with Menu, ToolBar, StatusBarWindow with Menu, ToolBar, StatusBar
16.57.11.Order of precedence for sizing-related properties that are implemented by Window.Order of precedence for sizing-related properties that are implemented by Window.
16.57.12.Use Window Activated and Deactivated event to control a media fileUse Window Activated and Deactivated event to control a media file
16.57.13.Animated Video WindowAnimated Video Window
16.57.14.Use WindowState to make full screen window, change resize mode to NoReSizeUse WindowState to make full screen window, change resize mode to NoReSize
16.57.15.Do not handle events until Window is fully initialized.Do not handle events until Window is fully initialized.
16.57.16.Load resource from Window ResourcesLoad resource from Window Resources
16.57.17.Launch a window with defined XAMLLaunch a window with defined XAML
16.57.18.Display window as dialogDisplay window as dialog
16.57.19.Save Window Position to RegistrySave Window Position to Registry
16.57.20.Center a Window to ScreenCenter a Window to Screen