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

Rapport Forrester sur les solutions de sécurité des charges de travail cloud (CWS)
Dans cette évaluation, basée sur 21 critères, Forrester Consulting étudie, analyse et note les fournisseurs de solutions de sécurité des charges de travail cloud (CWS). Ce rapport détaille le positionnement de chacun de ces fournisseurs pour aider les professionnels de la sécurité et de la gestion des risques (S&R) à adopter les solutions adaptées à leurs besoins.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Pourquoi l’indépendance de Java devient une priorité au niveau du conseil d’administration ?
- Le Club EBIOS, une communauté dédiée à la gestion des risques autour de la méthode EBIOS
- La difficile mise en conformité avec les réglementations pour les entreprises françaises
- Les risques liés à l’essor fulgurant de l’IA générative
- Pourquoi est-il temps de repenser la gestion des vulnérabilités ?
