Après avoir été nominé MVP Visual C++ en 2007, puis MVP ASP.NET en 2010, me voilà désormais MVP Visual C# pour 2012.
Je reconnais que ce blog est de moins en moins mis à jour mais je vais essayer de me rattraper ![]()
Merci encore à Microsoft de me renouveler sa confiance. J'en profite au passage pour vous souhaitez à tous une bonne année, pleine de C# et de .NET.
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) Windows Phone 7 (WP7) est la nouvelle plateforme de développement de Microsoft destinée aux smartphones.
Dans ce premier tutoriel, vous découvrirez comment démarrer le développement d'applications avec Windows Phone 7.
Nous commencerons par installer les outils nécessaires au développement sur WP7 puis nous créerons un premier programme simpliste en utilisant Silverlight pour WP7.
Enfin, nous l'exécuterons sur l'émulateur et découvrirons son fonctionnement.
Bonne lecture : http://nico-pyright.developpez.com/tutoriel/vs2010/csharp/windows-phone-seven/introduction-developpement-windows-phone-seven-wp7-silverlight/
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) Si vous développez avec ASP.NET et que vous voulez faire de l'Ajax, vous vous êtres probablement intéressés aux PageMethods.
Pour rappel, on peut utiliser les PageMethods de cette façon.
Si vous avez utilisé les PageMethods, vous vous heurterez fatalement à l'erreur suivante :
PageMethods is not defined Sisi, je vous assure :)
Voici ce que vous pouvez faire et vérifier pour que ce message qui révèle toute notre impuissance face au framework ASP.NET puisse enfin disparaitre :
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) On l'a souvent vu, l'utilisation de l'updatepanel est très pratique et améliore très facilement l'expérience utilisateur d'un site web.
Mal utilisé, celui-ci peut récupérer beaucoup plus d'informations que nécessaire.
Que faire par exemple dans le cas simple suivant, lorsque l'on doit mettre à jour plusieurs zones en même temps d'une page volumineuse ?
Quelque chose dans ce genre :
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) Après avoir utilisé l'upload de fichier de manière plus poussée, je me suis rendu compte que tout n'était pas encore parfait. J'ai donc procédé à quelques nouvelles améliorations.
- Vérification d'envoi à chaque envoi de données
- Catch plus complet des erreurs
Retrouvez l'article mis à jour à cette adresse et notamment ce paragraphe.
La classe WSUploader a été mise à jour avec ces améliorations.
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) Je vous présente dans ce nouvel article une solution pour gérer l'historique dans un site ASP.NET utilisant de l'Ajax.
Nous verrons notamment l'utilisation du composant ScriptManager et comment mettre à profit sa propriété EnableHistory.
Vous devez être identifié pour poster un commentaire.
, nico-pyright(c) Je vous présente ici comment créer un contrôle qui affiche un overlayer d'attente pendant un postback partiel AJAX pour ASP.NET en C#. Vous y verrez comment encapsuler le contrôle UpdateProgress et vous aurez un aperçu du cycle de vie client d'un postback AJAX
Bonne lecture
Vous devez être identifié pour poster un commentaire.
Suite à mon précédent billet, cette fois-ci nous allons voir l'utilisation de l'updatePanel dans un repeater.
Soit le repeater suivant, qui contient une dropdown pour chaque item de la collection qui lui est bindée :
<asp:Repeater ID="LeRepeater" runat="server" DataSource="<%# new int[] {1, 6, 11} %>" OnItemDataBound="ItemDataBound">
<ItemTemplate>
<asp:DropDownList runat="server" ID="LaList" AutoPostBack="true" OnSelectedIndexChanged="IndexChange">
</asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
Le code behind est le suivant :
protected override void OnLoad(EventArgs e)
{
if (!IsPostBack)
LeRepeater.DataBind();
LeLabel.Text = DateTime.Now.ToString();
base.OnLoad(e);
}
protected void IndexChange(object sender, EventArgs e)
{
Result.Text = string.Format("Valeur choisie : {0}", ((DropDownList)sender).SelectedValue);
}
protected void ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DropDownList LaList = (DropDownList)e.Item.FindControl("LaList");
for (int i = (int)e.Item.DataItem; i < (int)e.Item.DataItem + 5; i++)
{
LaList.Items.Add(new ListItem(i.ToString(), i.ToString()));
}
}
}
Ce qui fait qu'on se retrouve avec trois dropDown. La première va de 1 à 5, la seconde de 6 à 10 et la troisième de 11 à 15. Et lorsqu'on sélectionne une valeur, elle s'affiche dans un label.
Vous devez être identifié pour poster un commentaire.
J'aime beaucoup la fonctionnalité AutoPostBack d'une dropdownlist. Le seul inconvénient est qu'elle provoque un postback ... et que forcément, ca provoque un rechargement complet de la page. Ce qui peut etre génant pour l'utilisateur si la page est plutot grosse.
Dans ce monde Web 2.0, vous me direz ... AJAX.
Et je vous dirais ... allons-y ! ![]()
Vous devez être identifié pour poster un commentaire.
| Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Copyright © 2000-2012 - www.developpez.com