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

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.
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.
Nous sommes ouverts à tous les thèmes portant sur les services, les solutions et les technologies informatiques d'entreprise. Notre seule condition sera la qualité de votre contribution, quel que soit votre thème de prédilection, actualités, annonces, lancements, stratégie, tutoriaux, trucs et astuces, bonnes pratiques... cette liste n'étant pas exhaustive, stay tuned, au plaisir de collaborer.
Participez aux Microsoft IT CampsBénéficiez de formations gratuites, ouvertes et interactives animées par des architectes Microsoft ! Les Microsoft IT Camps sont un nouveau format d'évènement d'une demi-journée vous proposant d'apprendre par la pratique et comprendre comment les solutions Microsoft répondent à vos enjeux au quotidien.Découvrez les thèmes des IT Camps
Ressources Informatiques
Actualités Informatiques
Ciena déploie un réseau 100G de 2 800 km 15/05/2012 | Réseaux | 100G
Dell annonce la deuxième vague de sa 12e génération PowerEdge 15/05/2012 | Dell | Serveur
Scott Thompson, PDG de Yahoo, contraint de démissionner 14/05/2012 | Nomination | Stratégie
Sécurité : Des attaques moins nombreuses mais plus dangereuses selon HP 10/05/2012 | Sécurité | Web
Imagine Cup – Le projet Cap Street en route vers Sydney 07/05/2012 | Imagine Cup | Microsoft
Du script PowerShell à l’interface web avec Poshboard 04/05/2012 | Scripting | PowerShell
SCCM 2012 : « Gérer 100 000 utilisateurs avec un seul serveur » 04/05/2012 | System Center 2012 | TechDays 2012
UseIT 2012 – Open Data, cloud computing et cybercriminalité au programme 04/05/2012 | Salon | Evènement
Hana, mobilité, cloud : Henri van der Vaeren dévoile la stratégie de SAP 04/05/2012 | SAP | Cloud Computing
Citrix Netscaler 10 : un ADC élastique 25/04/2012 | Citrix | Appliances
MMS 2012 - Windows Server 2012 sortira en fin d’année 20/04/2012 | Windows Server 2012 | Microsoft Management Summit
MMS 2012 – System Center 2012 est disponible 18/04/2012 | System Center 2012 | Microsoft Management Summit
Hitachi cible les marchés verticaux avec les solutions NAS de BlueArc 16/04/2012 | NAS | Stockage
À la une d'IT Pro Magazine : Server Core, Archivage, Big Data et Windows Intune 06/04/2012 | Cloud Computing | Big Data
Serena renforce son offre ITSM 05/04/2012 | Administrateur | Développement
Vidéos Informatiques
Travail Collaboratif Présentation du Dell XPS 13
Travail Collaboratif Premiers déploiements massifs de SharePoint Workspace en 2012
Cloud computing « Le cloud ne doit pas être une aire de non-droit »
Windows Server Du script PowerShell à l’interface web avec Poshboard
Liens Informatiques
Ressources iT Pro
1er Guide thématique dédié à la mise œuvre d’un Cloud PrivéIT Pro Magazine | 12 pages
Guide de protection des environnements Hyper-VITPro Magazine | 4 pages
Guide d’optimisation & synchronisation des données SharePointAvepoint | 18 pages
Booster les performances des plates-formes virtuelles ?Diskeeper | 12 pages
IT Pro Magazine Spécial Windows 8IT Pro Magazine | 60 pages
Le guide du stockage signé IT Pro MagazineIT Pro Magazine | 16 pages
Testez Acronis Backup & Recovery 11 Virtual EditionAcronis | 2 pages






















