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
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- L’anxiété liée à l’IA, un risque sous-estimé pour la sécurité
- IA générative en Europe : une adoption massive, mais une gouvernance toujours en retard
- Golden records : le socle oublié des projets IA
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
