[ASP.NET] - Device Filtering

Le Device Filtering est une fonctionnalité très peu connue dans le monde ASP.NET.

A l'origine, cette fonctionnalité a été mise en place pour filtrer en fonction du "Device", par exemple PIE pour Pocket Internet Explorer (présent sur Pocket PC) mais elle peut être utilisée dans bien d'autre contexte car elle repose sur les identifiants du fichier .browser qui se situe dans "<SysDrive>\Windows\Framework\v2.0.50727\CONFIG\Browsers".

L'idée est donc de prefixer une propriété par un identifiant du fichier browser de la façon suivante :

1
2
3
4
5
<asp:Label ID="lbl" 
runat="server"
Text="Hello"
ie:Text="Hello IE"
mozilla:Text="Hello Mozilla" />

Cette fonctionnalité, disponible uniquement en déclaratif, vous permettra donc d'adapter votre controle au device ou navigateur précisé.

Cela peut être utile dans bien des cas comme la gestion des styles par exemple :

1
2
3
4
5
<asp:Label ID="lbl" 
runat="server"
Text="Hello"
ie:CssClass="IEOpacity"
mozilla:CssClass="MozillaOpacity" />

Cet exemple évitera d'avoir des "hacks" CSS dans vos feuilles de styles et donc d'adapter le comportement au navigateur précisé.

Mais cela va bien plus loin, prenons l'exemple d'un Menu :

1
2
3
4
5
6
7
8
9
10
<asp:Menu runat="server" ID="menu">
<StaticMenuStyle CssClass="StaticMenu" />
<ie:StaticMenuStyle CssClass="IEStaticMenu" />
<ie:items>
<asp:MenuItem Text="IE Item" />
</ie:items>
<Items>
<asp:MenuItem Text="Other Item" />
</Items>
</asp:Menu>

Le "Device Filtering" peut donc s'appliquer à un grand nombre d'éléments de la plateforme ASP.NET, très utile pour gérer les périphériques de type "mobile" (PIE par exemple), il peut aussi s'averer être utile dans vos développements quotidiens.

Aurelien
Member of WygTeam

Publié dimanche 18 mai 2008 12:33 par Aurelien
Classé sous
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

# re: [ASP.NET] - Device Filtering @ lundi 19 mai 2008 15:25

Ca c'est de l'astuce bien cachée !

Si je l'avais connu avant, ca m'aurait certainement éviter quelques développements douloureux... ;)

arno


Les 10 derniers blogs postés

- SharePoint 2007 : Nouvelle version du Stramit SharePoint 2007 Caml Viewer sur Codeplex par Philippe Sentenac [MVP SharePoint] le il y a 2 heures et 56 minutes

- ASP.NET AJAX 4.0 par Le blog technique de Loïc Bar le il y a 3 heures et 2 minutes

- [WPF] Comment déclencher un évènement sur un contrôle ? par Thomas Lebrun le il y a 4 heures et 32 minutes

- [Expression Web] Astuce de la Semaine : Utilisation et Configuration des Extraits de Code par Chronos, Blog d'un Intégrateur .NET le il y a 19 heures et 51 minutes

- Faire de l'AJAX sans restrictions de domaine par Kévin Gosse le il y a 22 heures et 20 minutes

- [IronPython] : IronPython & Silverlight 2 - Part II par Kim's Blog le 07-22-2008, 14:50

- [WPF] Des requêtes NDepend pour analyser vos projets WPF par Thomas Lebrun le 07-21-2008, 09:27

- Liste de jeux pour Silverlight par Pierrick's Blog le 07-20-2008, 14:37

- T_PAAMAYIM_NEKUDOTAYIM par MadMatt le 07-19-2008, 16:16

- Et je mets le son.... par Pierrick's Blog le 07-19-2008, 12:09