Windows Phone 7 - Tutoriel 12 : Navigateur Web

Navigateur Web simple en utilisant Silverlight sur Windows Phone 7

| Peter Bull | Deepin Prayag (Traduction) |

Traducteur

Deepin

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 : Commentez ♪

- Titre : Windows Phone 7 - Tutoriel 12 : Navigateur Web

- Auteurs : Peter Bull, Deepin Prayag (Traduction)

- Traducteur : Deepin

- Parution : 29 mars 2012

- Mise à jour : 12 avril 2012

- Licence : Copyright ® 2012 Peter Bull. Aucune reproduction, même partielle, ne peut être faite de ce site et 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.

Sommaire

- Traduction

- Introduction

- Navigateur Web simple en utilisant Silverlight sur Windows Phone 7

- Étape 1

- Étape 2

- Étape 3

- Étape 4

- Étape 5

- Étape 6

- Étape 7

- Étape 8

- Étape 9

- Étape 10

- Étape 11

- Étape 12

- Étape 13

- Étape 14

- Étape 15

- Conclusion

- Liens

- Remerciements

Traduction

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

Introduction

La navigation sur le Web est une autre tâche commune. Créez, en utilisant Silverlight sur Windows Phone 7, un navigateur Web simple qui peut ouvrir et enregistrer les adresses de sites web favoris.

Navigateur Web 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 :

Étape 2

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

Étape 3

Ensuite dans le volet XAML pour MainPage.xaml, entre les lignes au-dessus de <Grid x:Name="LayoutRoot" Background="{StaticResource PhoneBackgroundBrush}"> et </Grid>, tapez le code XAML suivant :

<phone:PhoneApplicationPage.ApplicationBar>
<shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
<shell:ApplicationBar.MenuItems>
<shell:ApplicationBarMenuItem Text="open favourite" Click="Open_Click"/>
<shell:ApplicationBarMenuItem Text="save favourite" Click="Save_Click"/>
<shell:ApplicationBarMenuItem Text="delete favourite" Click="Delete_Click"/>
</shell:ApplicationBar.MenuItems>
</shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>

Étape 4

Toujours dans le volet XAML, entre les lignes <Grid x:Name="Panel" Grid.Row="1"> et </Grid> tapez le code XAML suivant :

<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 :

Design :

Étape 5

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

Étape 6

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 la ligne TextBox1 comme ceci :

<TextBox Grid.Column="0" Name="Location">
<TextBox.InputScope>
<InputScope>
<InputScopeName NameValue="Url"/>
</InputScope>
</TextBox.InputScope>
</TextBox>

Voir ci-dessous :

Étape 7

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

Étape 8

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

<Button Grid.Column="1" Content="go" Click="Go_Click"/>

Voir ci-dessous :

Étape 9

Puis dans la section Contrôles Windows Phone de la Boite à outils, sélectionnez le contrôle WebBrowser :

Étape 10

Dessinez un Web Browser sur la section Content du Grid sur la page (en dessous de la section barre d'outils), puis dans le volet XAML modifiez la ligne webBrowser1 comme ceci :

<phone:WebBrowser Grid.Row="1" Name="Browser"/>

Voir ci-dessous :

Étape 11

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 WebBrowser tapez le code suivant :

using System.Text.RegularExpressions;
using System.IO.IsolatedStorage;

Toujours dans la vue de code, au-dessus de public MainPage() tapez les déclarations suivantes :

string filename = "favourite.url";
Regex favourite = new Regex("^URL=(?<URL>.*)$", RegexOptions.Multiline);
IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication();

Étape 12

Puisque nous en sommes à la vue de code pour MainPage.xaml.cs, au-dessus de la méthode public MainPage() tapez les gestionnaires d'évènements suivants :

private void Go_Click(object sender, RoutedEventArgs e)
{
if (!Location.Text.StartsWith("http://")
&& !Location.Text.StartsWith("https://"))
{
Location.Text = ("http://" + Location.Text);
}
Browser.Navigate(new Uri(Location.Text));
}

private void Open_Click(object sender, EventArgs e)
{
if (storage.FileExists(filename))
{
IsolatedStorageFileStream location = new IsolatedStorageFileStream(filename,
System.IO.FileMode.Open, storage);
System.IO.StreamReader file = new System.IO.StreamReader(location);
Location.Text = favourite.Match(file.ReadToEnd()).Groups["URL"].Value;
Browser.Navigate(new Uri(Location.Text));
}
}

private void Save_Click(object sender, EventArgs e)
{
IsolatedStorageFileStream location = new IsolatedStorageFileStream(filename,
System.IO.FileMode.Create, storage);
System.IO.StreamWriter file = new System.IO.StreamWriter(location);
file.Write("[DEFAULT]\r\n" +
"BASEURL=" + Browser.Source.AbsoluteUri + "\r\n" +
"[InternetShortcut]\r\n" +
"URL=" + Browser.Source.AbsoluteUri);
file.Dispose();
location.Dispose();
}

private void Delete_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Delete Favourite?", "Web Browser",
MessageBoxButton.OKCancel) == MessageBoxResult.OK)
{
if (storage.FileExists(filename))
{
storage.DeleteFile(filename);
}
}
}

Étape 13

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 :

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

Étape 14

Cliquez sur le TextBox et ensuite en utilisant le SIP ou le clavier saisissez l'adresse d'un site web, puis cliquez sur go pour visiter ce site web. Vous pouvez enregistrer le site en tant que favori en utilisant « save favourite », ce qui vous permettra d'ouvrir le site plus tard avec « open favourite » :

Étape 15

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 :

Conclusion

Ceci est un Navigateur Web très simple. Avec cet exemple vous pouvez également enregistrer un site en tant que favori et ouvrir ce site favori, tout en utilisant le format .url standard. Vous pouvez utiliser le contrôle Web Browser pour afficher le contenu HTML que vous souhaitez. Essayez d'ajouter d'autres fonctionnalités telles que la possibilité de stocker plus d'un favori - personnalisez-le !

Liens

Télécharger le code source du tutoriel.

Remerciements

Je tiens ici à remercier Peter Bull de m'avoir autorisé à traduire son tutoriel.
Je remercie Jean-Michel Ormes pour sa relecture technique et ses propositions.
Je remercie également FirePrawn pour sa relecture orthographique et ses propositions.