Vous pouvez désormais débuter la création de votre composant WebPart. Au niveau de son fichier de code, vous devez, dans la méthode CreateChildControls, créer les contrôles qui seront visibles dans votre composant. Le plus simple est de créer une table, de l’ajouter à la collection Controls de
Programmation du composant WebPart
l’objet Web Part, d’inclure des lignes et des cellules dans la table, puis d’ajouter vos contrôles à la collection Controls des cellules. Le code suivant ajoute le contrôle Label à la pre mière cellule, dans la première ligne de la table :
Dim tbl As New Table
Me.Controls.Add(tbl)
Dim trTitle As New TableRow
tbl.Rows.Add(trTitle)
Dim tcTitle As New TableCell
trTitle.Cells.Add(tcTitle)
Dim TitleLabel As New Label()
TitleLabel.Text = "Look for movies with title:" tcText.Controls.Add(SearchTitle)
Pour mon exemple, j’ai créé une table avec quatre lignes : la première contient un contrôle Label et un contrôle TextBox, afin que l’utilisateur puisse entrer le titre d’un film à rechercher. La deuxième ligne contient un contrôle Label et un contrôle TextBox, afin que l’utilisateur puisse saisir une catégorie (telle que film d’action ou drame). La troisième ligne contient le bouton de lancement de la recherche. Enfin, la dernière ligne inclut un contrôle GridView, pour l’affichage du résultat. Dans la méthode CreateControls, vous devez aussi associer tous les événements nécessaires à votre composant. Le code suivant ajoute un bouton à la table et lui associe une routine d’événement :
Dim trButton As New TableRow
tbl.Rows.Add(trButton)
Dim tcButton As New TableCell
trButton.Cells.Add(tcButton)
Dim SearchButton As New Button()
SearchButton.Text = "Search" AddHandler Search
Button.Click, AddressOf Me.StartSearch
tcButton.Controls.Add(SearchButton)
La routine d’événement récupère les données des deux contrôles TextBox de la table (dans les première et deuxième lignes), puis remplit un DatSet lié à un GridView (dans la quatrième ligne) :
Private Sub StartSearch(ByVal sender As Object, _
ByVal e As System.EventArgs)
Dim conn As New SqlConnection("…")
Dim cm As SqlCommand = conn.CreateCommand
Dim da As New SqlDataAdapter(cm)
Dim ds As New System.Data.DataSet
Dim searchString As String
Dim tbl As Table
tbl = CType(Me.Controls(0), Table)
searchString = CType( _
tbl.Rows(0).Cells(0).Controls(1), TextBox).Text
cm.CommandText = "Select * From …"
da.Fill(ds, "Results")
Dim gv As GridView
gv = CType(tbl.Rows(2).Cells(0).Controls(1), GridView)
gv.DataSource = ds
gv.DataMember = "Results"
gv.DataBind() End Sub
Pour que l’application SharePoint soit complète, il faut qu’elle prenne en charge un certain niveau de personnalisation. Dans mon exemple, la TextBox de catégorie de films est supportée par une propriété de catégorie personnalisable qui gère un champ interne intitulé _category :
Private _category As String
"Movie Search Settings")> _
"A valid movie category to search within")>
Public Property Category() As String
Get
Return _category
End Get
Set(ByVal value As String)
_category = value
End Set
End Property
Lorsque la TexBox SearchCategory est ajoutée à la table qui constitue le contrôle, j’initialise le contrôle avec le champ _category défini via la propriété personnalisable :
Dim SearchCategory As New TextBox()
SearchCategory.Text = _category tcCategory.Controls.Add(SearchCategory)
SharePoint permet désormais à l’utilisateur de spécifier une valeur pour la propriété Category en sélectionnant « Personnalize this page » dans le menu « Welcome User » en haut de la page, ce afin de faire passer la page en « mode personnalisation ». Une fois que l’utilisateur saisit une valeur, SharePoint veille à que la propriété soit automatiquement définie à cette valeur chaque fois que l’utilisateur revient à la page.
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Top 5 du Baromètre de la cybersécurité 2025 : entre confiance et vulnérabilités persistantes
- Analyse Patch Tuesday Février 2026
- Entamer la transition vers la cryptographie post quantique est prioritaire
- Full Cloud : une transformation numérique inévitable pour les entreprises ?
Articles les + lus
Quand l’innovation échappe à ses créateurs: Comment éviter l’effet Frankenstein à l’ère de l’IA
Alliée ou menace ? Comment l’IA redessine le paysage cyber
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
À la une de la chaîne Tech
- Quand l’innovation échappe à ses créateurs: Comment éviter l’effet Frankenstein à l’ère de l’IA
- Alliée ou menace ? Comment l’IA redessine le paysage cyber
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
