> Tech > Dossier Développement : Silverlight 3 intègre le développement d’applications orientées données (2/2)

Dossier Développement : Silverlight 3 intègre le développement d’applications orientées données (2/2)

Tech - Par Peter Vogel - Publié le 01 décembre 2010
email

Le nouveau contrôle DataForm et la prise en charge améliorée des applications orientées données permettent aux développeurs de délivrer des applications métier aux utilisateurs, dès lors qu’ils ont un navigateur Web compatible avec Silverlight.

Tandis que les versions 1 et 2 de Silverlight mettaient l’accent sur le développement d’applications Internet enrichies (RIA), les développeurs d’applications métier (LOB) se sentaient un peu délaissés.

Dossier Développement : Silverlight 3 intègre le développement d’applications orientées données (2/2)

Vous pouvez modifier le comportement du contrôle DataForm en définissant les propriétés à partir du code ou, comme je l’ai fait ici, en ajoutant par déclaration des attributs à l’élément du DataForm. Par exemple, par défaut, le DataForm présente initialement chaque objet Customer en mode affichage. Si vous définissez la propriété AutoEdit du DataForm à True, le formulaire affichera automatiquement chaque entité en mode édition lorsque l’utilisateur y accède.

D’autre part, AutoCommit a la valeur True par défaut, ce qui permet à l’utilisateur d’enregistrer les modifications juste en regardant l’entité suivante dans la collection. Si vous souhaitez que l’utilisateur clique expressément sur le bouton Save généré automatiquement pour valider les modifications, il suffit de définir la valeur False pour l’attribut AutoCommit.

Il est possible de contrôler les activités exécutables par l’utilisateur avec le DataForm. Les attributs CanUserDeleteItems et CanUserAddItems vous permettent de désactiver certaines activités CRUD gérées par le DataForm.

L’extension de ce contrôle avec ces options aboutira à une balise du type suivant :

<dataControls: DataForm ItemsSource="{Binding Customers}"
Name="MyDataForm" AutoCommit="False" AutoEdit="True"
CanUserDeleteItems="False">

Le DataForm est un contrôle à modèle, avec des DataTemplate distincts pour l’insertion, l’affichage et la mise à jour des données. Par défaut, le DataForm ajoute un contrôle à chaque modèle pour les différentes propriétés de l’entité. Le fait de définir l’attribut AutoGenerateFields à False pour le DataForm supprime ce comportement et vous permet de concevoir votre propre mise en page pour les modèles. Le contrôle DataForm déclenche également une multitude d’événements avant et après les activités critiques (par exemple pendant l’ajout d’enregistrements ou pendant la validation), et vous permet ainsi d’ajouter du code pour valider les données ou contrôler les mises à jour.

Toutefois, il vous faudra prendre certaines décisions de conception. Nombre d’éléments contrôlables en étendant le DataForm le sont également en étendant l’objet local. Dans une multitude de cas, la meilleure pratique consiste à employer les fonctionnalités de l’objet local pour contrôler les activités liées aux données et à limiter les modifications du DataForm au contrôle de workflow. Par une extension de l’objet local, vos modifications liées aux données peuvent « suivre l’objet » vers tout contrôle qui gère les mises à jour.

Téléchargez cette ressource

État des lieux de la réponse à incident de cybersécurité

État des lieux de la réponse à incident de cybersécurité

Les experts de Palo Alto Networks, Unit 42 et Forrester Research livrent dans ce webinaire exclusif leurs éclairages et stratégies en matière de réponses aux incidents. Bénéficiez d'un panorama complet du paysage actuel de la réponse aux incidents et de sa relation avec la continuité de l'activité, des défis auxquels font face les entreprises et des tendances majeures qui modèlent ce domaine. Un état des lieux précieux pour les décideurs et professionnels IT.

Tech - Par Peter Vogel - Publié le 01 décembre 2010