[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

- ssdl view et TPT par Matthieu MEZIL le il y a 15 heures et 54 minutes

- L'injection SQL n'est PAS un problème QUE pour les développeurs web ! par CoqBlog le il y a 16 heures et 50 minutes

- Un outil pour réaliser des animations WPF basées sur des équations de Bézier par Perspective le il y a 20 heures et 13 minutes

- Sandcastle et CodePlex : le verdict par CoqBlog le il y a 21 heures et 5 minutes

- ssdl view et TPH par Matthieu MEZIL le il y a 22 heures et 46 minutes

- Webcasts sur le Parallel Framework disponibles par Matthieu MEZIL le 07-04-2008, 17:26

- [Silverlight] - Comprendre et Débuter avec Silverlight par Danuz le 07-04-2008, 12:41

- SharePoint : Nouvel article sur l'exportation et Importation de sites SharePoint par Blog Technique de Romelard Fabrice le 07-04-2008, 01:00

- ImagineCup 2008 Final in Paris: Day 1 par Richard Clark le 07-03-2008, 22:48

- PowerShell : Comment utiliser un ENUM .NET dans un script PowerShell par Blog Technique de Romelard Fabrice le 07-03-2008, 18:09