protected override void OnNavigatedTo(NavigationEventArgs e) { ptm = Windows.Media.PlayTo.PlayToManager.GetForCurrentView(); ptm.SourceRequested += SourceRequested; ptm.SourceSelected += SourceSelected; StartSlideShow(); }
async private void SourceRequested(Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e) { var deferral = e.SourceRequest.GetDeferral(); await dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { e.SourceRequest.SetSource(player.PlayToSource); deferral.Complete(); }); }
private async void MainPage_SourceRequested(Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs args) { await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { try { Windows.Media.PlayTo.PlayToSourceDeferral deferral = args.SourceRequest.GetDeferral(); args.SourceRequest.SetSource(AudioController.Default.PlayToSource); deferral.Complete(); } catch (Exception) { } }); }
private void sourceRequestHandler( Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e) { try { e.SourceRequest.SetSource(mediaElement.PlayToSource); } catch (Exception ex) { messageBlock.Text += "Exception encountered: " + ex.Message + "\n"; } }
async private void sourceRequestHandlerDeferred( Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e) { var deferral = e.SourceRequest.GetDeferral(); // Async call to get source media var element = await getMediaElementAsync(); e.SourceRequest.SetSource(element.PlayToSource); deferral.Complete(); }
// Update the once the user has selected a device to stream to. private async void SourceSelected(Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceSelectedEventArgs e) { await dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { DisconnectButton.Click += DisconnectButtonClick; MessageBlock.Text = "Streaming to " + e.FriendlyName + "..."; DeviceBlock.Text = e.FriendlyName + ".\nClick here to disconnect."; var imageBitmap = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); imageBitmap.SetSource(e.Icon); IconImage.Source = imageBitmap; }); }
private void sourceRequestHandlerWithEvents( Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e) { try { var controller = mediaElement.PlayToSource; controller.Connection.Error += playToConnectionError; controller.Connection.StateChanged += playToConnectionStageChanged; controller.Connection.Transferred += playToConnectionTransferred; e.SourceRequest.SetSource(controller); } catch (Exception ex) { messageBlock.Text += "Exception encountered: " + ex.Message + "\n"; } }
// Called when the user selects a Play To device to stream to. private void sourceSelectedHandler( Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceSelectedEventArgs e) { if (mediaElement.Name == "iplayer") { if (!e.SupportsImage) { messageBlock.Text += e.FriendlyName + " does not support streaming images. " + "Please select a different device."; return; } } if (mediaElement.Name == "vplayer") { if (!e.SupportsVideo) { messageBlock.Text += e.FriendlyName + " does not support streaming video. " + "Please select a different device."; return; } } if (mediaElement.Name == "aplayer") { if (!e.SupportsAudio) { messageBlock.Text += e.FriendlyName + " does not support streaming audio. " + "Please select a different device."; return; } } Windows.Storage.Streams.IRandomAccessStream iconStream = e.Icon; Windows.UI.Xaml.Media.Imaging.BitmapImage iconBitmap = new Windows.UI.Xaml.Media.Imaging.BitmapImage(); iconBitmap.SetSource(iconStream); playToDeviceIconImage.Source = iconBitmap; playToDeviceFriendlyNameBlock.Text = e.FriendlyName; }
private async void SourceRequested(Windows.Media.PlayTo.PlayToManager sender, Windows.Media.PlayTo.PlayToSourceRequestedEventArgs e) { var deferral = e.SourceRequest.GetDeferral(); await dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { initialImage = new Image(); // Use the statechanged event of the image passed to Play To to determine when // the image is finally connected to the Play To Receiver. initialImage.PlayToSource.Connection.StateChanged += InitialImageConnectionStateChanged; // Provide Play To with the first image to stream. e.SourceRequest.SetSource(initialImage.PlayToSource); deferral.Complete(); }); }
protected override void OnNavigatedTo(NavigationEventArgs e) { dis = Window.Current.CoreWindow.Dispatcher; ptm = Windows.Media.PlayTo.PlayToManager.GetForCurrentView(); ptm.SourceRequested += sourceRequestHandler; try { dtm = DataTransferManager.GetForCurrentView(); dtm.DataRequested += dtm_DataRequested; SearchPane.SuggestionsRequested += SearchPane_SuggestionsRequested; SearchPane.QuerySubmitted += SearchPane_QuerySubmitted; SettingsPane.GetForCurrentView().CommandsRequested += SettingsPane_CommandsRequested; //var mouse = new MouseCapabilities(); //if (mouse.MousePresent >= 1) // this.PointerMoved += OnMoved; } catch { ErrorCorrecting("008"); } }