Le contrôle FormView ASP.NET 2.0 est similaire au contrôle DetailsView dans le sens où il affiche facilement les enregistrements individuels d'une source de données principale. Cet article abordera la syntaxe et l'application de ce contrôle.
Personnalisation
Bien que les deux contrôles affichent un enregistrement à la fois, la principale différence entre DetailsView et FormView est que FormView utilise des modèles définis par l'utilisateur. DetailsView utilise des champs de ligne ; Le contrôle FormView ne prédéfinit pas la disposition des données ; à la place, vous créez un modèle contenant le contrôle pour afficher les champs individuels de l'enregistrement. Le modèle contient les formats, contrôles et expressions de liaison utilisés pour créer le formulaire.
Vous pouvez contrôler l'affichage des enregistrements de données sous trois formes : modifier, afficher et ajouter un nouvel enregistrement. De plus, vous pouvez inclure et formater des éléments d’en-tête et de pied de page. Vous pouvez également exploiter n'importe lequel des contrôles ASP.NET disponibles dans diverses parties du contrôle FormView.
La syntaxe de
déclaration et d'utilisation d'une instance de contrôle FormView est très similaire à celle de déclaration et d'utilisation d'une instance de contrôle DetailsView. La principale différence entre eux est que, comme il n'y a pas de paramètres par défaut à utiliser, vous devez inclure le format et le modèle d'affichage des données dans le contrôle FormView. Le listing A montre une partie de la syntaxe d'ouverture d'une balise d'élément FormView.
Vous avez peut-être remarqué que de nombreux attributs correspondent aux éléments des tableaux HTML, comme les titres et les bordures. Cela montre qu'ASP.NET utilise des tableaux HTML pour restituer le contrôle FormView.
Vous pouvez afficher une liste plus complète des propriétés du contrôle FormView en ligne via le site Web de Microsoft. Le tableau ci-dessous répertorie quelques propriétés importantes à surveiller.
·AllowPaging : valeur booléenne indiquant si l'utilisateur peut paginer les enregistrements dans la source de données spécifiée. Si la valeur est true, affiche le système de numérotation paginé par défaut (de 1 au nombre d'enregistrements) au bas des enregistrements affichés. Les liens de pagination peuvent être personnalisés via diverses propriétés de pagination.
·DataKeyNames : champs clés de la source de données.
·DataSourceID : utilisé pour transplanter l'ID de l'élément de source de données du contrôle FormView. Si vous utilisez SQL Server, cela correspond à l'ID attribué à l'élément SqlDataSource.
·DefaultMode : vous permet de spécifier le comportement par défaut du contrôle. C'est-à-dire comment il est initialement affiché lorsque l'utilisateur y accède. Les valeurs possibles incluent : ReadOnly, Insert et Edit.
·EmptyDataText : le texte affiché lorsqu'une valeur de données vide est rencontrée.
Lorsque vous déclarez un contrôle FormView, son contenu doit également être formaté en conséquence. Ses données sont affichées via des modèles. Le contrôle FormView utilise principalement cinq modèles :
·ItemTemplate : il contrôle l'affichage lorsque les utilisateurs visualisent les données.
·EditItemTemplate : il détermine le format et l'affichage des éléments de données lorsque les utilisateurs modifient des enregistrements. Dans ce modèle, vous utiliserez d'autres contrôles, tels que des éléments TextBox, pour permettre aux utilisateurs de modifier des valeurs.
·InsertItemTemplate : Semblable à la modification d'un enregistrement, ce modèle contrôle l'affichage des champs qui permettent à l'utilisateur d'ajouter un nouvel enregistrement dans la source de données backend. Au fur et à mesure que de nouvelles valeurs sont saisies, l'utilisateur doit être autorisé à saisir librement du texte ou limité à certaines valeurs, en fonction des exigences des données.
·FooterTemplate : détermine le contenu affiché dans la partie pied de page de la table de contrôle FormView, le cas échéant.
·HeaderTemplate : détermine le contenu affiché dans la partie en-tête de la table de contrôle FormView, le cas échéant.
Ces modèles vous permettent de contrôler l'affichage et le comportement des données liées à un contrôle FormView. Par exemple, le formulaire Web ASP.NET du listing B se connecte à une base de données Northwind standard et permet aux utilisateurs d'afficher, de modifier, de supprimer et d'ajouter de nouveaux enregistrements d'employés via les champs prénom, nom, date d'embauche et numéro de téléphone personnel.
Il utilise le contrôle TextField pour afficher les données en cours de modification ou d'ajout, ainsi que les valeurs affichées uniquement pour examen. ItemTemplate utilise CSS pour formater les tableaux, tandis que InsertTemplate utilise des styles HTML pour le formatage. La méthode à utiliser est décidée par le développeur.
Remarque : ASP.NET utilise des contrôles Button pour ajouter, modifier, supprimer et enregistrer des enregistrements.
Dans le contrôle Button, la valeur CommandName de New convertit l'enregistrement en mode insertion et charge le modèle InsertItemTemplate, qui permet à l'utilisateur de saisir une nouvelle valeur d'enregistrement. Vous pouvez utiliser la valeur Edit CommandName pour ajouter un nouveau bouton au ItemTemplate afin de mettre le contrôle FormView en mode édition.
Vous pouvez ajouter un bouton avec une valeur CommnadName de Supprimer au modèle ItemTemplate pour permettre à l'utilisateur de supprimer l'enregistrement actuel de la source de données. CommnadName de Update enregistre les données, tandis que Cancel termine l'opération.
Il est étonnant de constater à quel point il est facile pour
les développeurs de contrôler
bon nombre des nouvelles fonctionnalités d'ASP.NET 2.0.FormView étend la fonctionnalité simple de DetailsView, vous permettant de contrôler facilement le contenu d'affichage à formater selon vos besoins. Ce nouveau contrôle vous offre une autre option pour fournir vos solutions.