IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Windows Phone 7 - Tutoriel 14 : Tweet View

Visionneuse Twitter® simple en utilisant Silverlight sur Windows Phone 7

Ce tutoriel fait partie d'une série de niveau débutant-intermédiaire pour apprendre Windows Phone 7 par le biais d'exemples pas à pas.

Langage : C#

Public visé : niveau Débutant

Commentez ce tutoriel : 3 commentaires Donner une note à l´article (4.5)

Article lu   fois.

Les trois auteurs et traducteur

Profil ProSite personnel

Traducteur : Profil Pro

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Traduction

Ce tutoriel est la traduction la plus fidèle possible du tutoriel original de Peter Bull, Windows Phone 7 - Simple Twitter® Viewer using Silverlight on Windows Phone 7.

Introduction

Tweet View est une application simple qui vous permet de visualiser des tweets d'une personne particulière avec LINQ et le flux RSS Twitter® User, en utilisant Silverlight sur Windows Phone 7.

Visionneuse Twitter® simple en utilisant Silverlight sur Windows Phone 7

Étape 1

Démarrez Microsoft Visual Web Developer 2010 Express pour Windows Phone, puis sélectionnez Fichier puis Nouveau Projet… Sélectionnez Visual C# puis Silverlight for Windows Phone, puis Application Windows Phone dans les modèles installés, sélectionnez un emplacement si vous le souhaitez, puis entrez un nom pour le projet et appuyez sur OK :

Image non disponible

Étape 2

Une page Application Windows Phone nommée MainPage.xaml devrait alors apparaître :

Image non disponible

Étape 3

Sélectionnez Projet puis Ajouter une référence… La fenêtre Ajouter une référence devrait apparaître, sélectionnez System.Xml.Linq dans la liste .NET :

Image non disponible

Étape 4

Ajoutez la référence à System.Xml.Linq en cliquant sur OK. Sélectionnez Projet puis Ajouter une classe…, et sélectionnez le modèle Classe s'il ne l'est pas déjà, ensuite modifiez le Nom à Tweet.cs :

Image non disponible

Étape 5

Ajoutez la nouvelle classe au projet en cliquant sur Ajouter, puis dans la vue de code pour la nouvelle classe, en dessous du « { » de la ligne public class Tweet, tapez ceci :

 
Sélectionnez
private string _avatar;
private string _title;
private string _author;
private DateTime _published;
Image non disponible

Étape 6

Puisque nous en sommes à la vue de code pour Tweet.cs, en dessous de la ligne private DateTime _published; tapez les propriétés suivantes :

 
Sélectionnez
public string Avatar
{
  get { return _avatar; }
  set { _avatar = value; }
}

public string Title
{
  get { return _title; }
  set { _title = value; }
}

public string Author
{
  get { return _author; }
  set { _author = value; }
}

public DateTime Published
{
  get { return _published; }
  set { _published = value; }
}
Image non disponible

Étape 7

Retournez au concepteur de vues MainPage en sélectionnant l'onglet MainPage.xaml. Puis dans le volet XAML, entre les lignes <Grid x:Name="ContentPanel" Grid.Row="1"> et </Grid>, tapez le code XAML suivant :

 
Sélectionnez
<Grid x:Name="ContentMain">
  <Grid.RowDefinitions>
    <RowDefinition Height="80"/>
    <RowDefinition Height="*"/>
  </Grid.RowDefinitions>
  <Grid x:Name="Toolbar" Grid.Row="0">
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="*"/>
      <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>
    <!-- Toolbar -->
  </Grid>
  <!-- Content -->
</Grid>

XAML :

Image non disponible

Design :

Image non disponible

Étape 8

Puis dans la section Contrôles Windows Phone de la Boîte à outils, sélectionnez le contrôle TextBox :

Image non disponible

Étape 9

Dessinez un TextBox sur la section barre d'outils (la plus petite section supérieure) du Grid sur la page, en dessous du titre de la page, et dans le volet XAML en dessous de la ligne <!-- Toolbar -->, modifiez TextBox1 comme ceci :

 
Sélectionnez
<TextBox Grid.Column="0" Name="Subject"/>

Voir ci-dessous :

Image non disponible

Étape 10

Puis dans la section Contrôles Windows Phone de la Boîte à outils, sélectionnez le contrôle Button :

Image non disponible

Étape 11

Dessinez un bouton sur la section barre d'outils en glissant le bouton de la Boîte à outils sur la section barre d'outils du Grid sur la page, puis dans le volet XAML modifiez la ligne Button comme ceci :

 
Sélectionnez
<Button Grid.Column="1" Content="lookup" Click="Lookup_Click"/>


Voir ci-dessous :

Image non disponible

Étape 12

Puisque nous en sommes au volet XAML pour MainPage, en dessous de la ligne <!-- Content-->, tapez le code ListBox XAML suivant :

 
Sélectionnez
<ListBox Grid.Row="1" Name="Results">
  <ListBox.ItemTemplate>
    <DataTemplate>
      <StackPanel Orientation="Horizontal">
        <Image Height="90" Width="90" VerticalAlignment="Top" Margin="5,5,5,5" Source="{Binding Path=Avatar}"/>
        <StackPanel Width="340">
          <TextBlock TextWrapping="Wrap" Text="{Binding Path=Title}"/>
          <TextBlock Text="{Binding Path=Published}"/>
          <TextBlock FontWeight="Bold" Text="{Binding Path=Author}"/>   
        </StackPanel>
      </StackPanel>
    </DataTemplate>
  </ListBox.ItemTemplate>
</ListBox>

Voir ci-dessous :

Image non disponible

Étape 13

En étant toujours dans le concepteur de vues pour MainPage.xaml, sélectionnez le TextBlock « nom de la page » (PageTitle), puis allez dans la boîte Propriétés et modifiez la propriété Text à tweet view :

Image non disponible

Étape 14

Faites un clic droit sur la page ou sur l'entrée pour MainPage.xaml dans l'Explorateur de solutions et choisissez l'option Afficher le code. Dans la vue de code, au-dessus de namespace TweetView, tapez ceci :

 
Sélectionnez
using System.Xml.Linq;
Image non disponible

Étape 15

Puisque nous en sommes à la vue de code pour MainPage.xaml.cs, au-dessus de public MainPage() tapez les méthodes suivantes :

 
Sélectionnez
private void Tweets(object Sender, DownloadStringCompletedEventArgs e)
{
  XElement _xml;
  System.Globalization.CultureInfo provider = 
  System.Globalization.CultureInfo.InvariantCulture;
  try
  {
    if (!e.Cancelled)
    {
       _xml = XElement.Parse(e.Result);
      foreach (XElement value in _xml.Elements("status"))
      {
        Tweet _tweet = new Tweet();
        _tweet.Avatar = value.Element("user").Element("profile_image_url").Value;
        _tweet.Title = value.Element("text").Value;
        _tweet.Published = DateTime.ParseExact(value.Element("created_at").Value, 
        "ddd MMM dd HH:mm:ss zzzzz yyyy", provider);
        _tweet.Author = value.Element("user").Element("screen_name").Value;
        Results.Items.Add(_tweet);
      }
    }
  }
  catch
  {
    // Ignore Errors
  }
}

private void Query(string Value)
{
  WebClient _client = new WebClient();
  _client.DownloadStringCompleted += Tweets;
  _client.DownloadStringAsync(new Uri(("http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=" 
  + HttpUtility.UrlEncode(Value))));
}
Image non disponible

Étape 16

Toujours dans la vue de code pour MainPage.xaml.cs, au-dessus de public MainPage() tapez le gestionnaire d'évènement suivant :

 
Sélectionnez
private void Lookup_Click(object sender, RoutedEventArgs e)
{
  Query(Subject.Text);
}
Image non disponible

Étape 17

Enregistrez le Projet maintenant que vous avez terminé l'application Windows Phone Silverlight. Sélectionnez l'option Windows Phone Emulator ensuite sélectionnez Debug puis Démarrer le débogage ou cliquez sur Démarrer le débogage :

Image non disponible

Dès que vous l'aurez fait, ce qui suit apparaîtra dans l'émulateur Windows Phone une fois chargé :

Image non disponible

Étape 18

Appuyez sur le TextBox et ensuite en utilisant le SIP ou le clavier saisissez un nom d'utilisateur à rechercher, puis cliquez sur lookup pour afficher leurs tweets :

Image non disponible

Étape 19

Vous pouvez ensuite Arrêter l'application en sélectionnant la fenêtre d'application Visual Studio 2010 et en cliquant sur le bouton Arrêter le débogage :

Image non disponible

Conclusion

Ceci est un exemple très simple d'affichage des tweets d'un utilisateur de Twitter®. Il y a des informations supplémentaires d'un utilisateur que vous pouvez afficher telles que le nombre de tweets, de suiveurs, etc. Vous pouvez ajouter ces fonctionnalités ou personnaliser l'interface.

Liens

Remerciements

Je tiens ici à remercier Peter Bull de m'avoir autorisé à traduire son tutoriel.
Je remercie Nathanael Marchand pour sa relecture technique et ses propositions.
Je remercie également ClaudeLELOUP pour sa relecture orthographique et ses propositions.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

Copyright © 2012 Peter Bull. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.