اذهب إلى المحتوى

السؤال

نشر

السلام عليكم، لدي برنامج صغير أريد التمرين عليه، فيه MediaElement و Button وأيضاً TextBox.
فما أريده هو عندما أضع رابطاً لفيديو من اليوتيوب، وأضغط على الـButton الذي أسميه btn_play أريد تشغيل ذلك الفيديو الموجود من اليوتيوب!
أريد الخطوات العملية لفعل ذلك، وشرح لها لكي أفهمها جزاكم الله خير.

Recommended Posts

  • 0
نشر

بعد بعض البحث، وجدت الآتي:

Page:

public partial class MyPage : PhoneApplicationPage
{
	protected override void OnBackKeyPress(CancelEventArgs e)
	{
		if (YouTube.CancelPlay()) // used to abort current youtube download
			e.Cancel = true;
		else
		{
			// your code here
		}
		base.OnBackKeyPress(e);
	}

	protected override void OnNavigatedTo(NavigationEventArgs e)
	{
		YouTube.CancelPlay(); // used to reenable page
		SystemTray.ProgressIndicator.IsVisible = false; 

		// your code here

		base.OnNavigatedTo(e);
	}

	private async void OnButtonClick(object o, RoutedEventArg e)
	{
		SystemTray.ProgressIndicator.IsVisible = true; 
		try
		{
			await YouTube.PlayWithPageDeactivationAsync(
				"Zln9I9IttLA", true, YouTubeQuality.Quality480P);
		}
		catch (Exception ex)
		{
			SystemTray.ProgressIndicator.IsVisible = false; 
			MessageBox.Show(ex.Message);
		}
	}
}

OnKeyBackPress Methode:

public partial class MyPage : PhoneApplicationPage
{
	public MyPage()
	{
		...
		AddBackKeyPressedHandler(YouTube.HandleBackKeyPress);
	}

	...
}

كود Xaml الخاص بالقارئ:

<MediaElement x:Name="player" Width="480" Height="320" />

كود قراءة الفيديو:

var url = await YouTube.GetVideoUriAsync(youTubeId, YouTubeQuality.Quality720P);
if (url != null)
{
	player.Source = url.Uri;
	player.Play();
}
else
	// TODO show error (video uri not found)

لقراءة الفيديو خارجيا:

var youTubeId = "yourYouTubeId";
try
{
    //// TODO: Show progress bar
    var uri = await YouTube.GetVideoUriAsync(youTubeId, YouTubeQuality.Quality1080P);
    if (uri != null)
    {
        var options = new LauncherOptions();
        options.ContentType = "video/mp4";
        await Launcher.LaunchUriAsync(uri.Uri, options); 
    }
    else
        throw new Exception("no_video_urls_found");
}
catch (Exception exception)
{
    //// TODO: Show exception
}
finally
{
    //// TODO: Hide progress bar
}

 

المصدر:

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...