DetailsPage.xaml.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Xamarin.Forms;
  7. using DevDaysSpeakers.Model;
  8. using Plugin.TextToSpeech;
  9. using DevDaysSpeakers.ViewModel;
  10. namespace DevDaysSpeakers.View
  11. {
  12. public partial class DetailsPage : ContentPage
  13. {
  14. Speaker speaker;
  15. public DetailsPage(Speaker speaker)
  16. {
  17. InitializeComponent();
  18. //Set local instance of speaker and set BindingContext
  19. this.speaker = speaker;
  20. BindingContext = this.speaker;
  21. ButtonSpeak.Clicked += ButtonSpeak_Clicked;
  22. ButtonWebsite.Clicked += ButtonWebsite_Clicked;
  23. }
  24. private void ButtonSpeak_Clicked(object sender, EventArgs e)
  25. {
  26. CrossTextToSpeech.Current.Speak(this.speaker.Description);
  27. }
  28. private void ButtonWebsite_Clicked(object sender, EventArgs e)
  29. {
  30. if (speaker.Website.StartsWith("http"))
  31. Device.OpenUri(new Uri(speaker.Website));
  32. }
  33. }
  34. }