Partager via


Méthodes partielles (Visual Basic)

Les méthodes partielles permettent aux développeurs d’insérer une logique personnalisée dans du code. En règle générale, le code fait partie d’une classe générée par le concepteur. Les méthodes partielles sont définies dans une classe partielle créée par un générateur de code et sont couramment utilisées pour fournir une notification indiquant que quelque chose a été modifié. Ils permettent au développeur de spécifier un comportement personnalisé en réponse à la modification.

Le concepteur du générateur de code définit uniquement la signature de méthode et un ou plusieurs appels à la méthode. Les développeurs peuvent ensuite fournir des implémentations pour la méthode s’ils souhaitent personnaliser le comportement du code généré. Quand aucune implémentation n’est fournie, les appels à la méthode sont supprimés par le compilateur, ce qui n’entraîne aucune surcharge de performances supplémentaire.

Déclaration

Le code généré marque la définition d’une méthode partielle en plaçant le mot clé Partial au début de la ligne de signature.

Partial Private Sub QuantityChanged()  
End Sub  

La définition doit respecter les conditions suivantes :

  • La méthode doit être un Sub, pas un Function.

  • Le corps de la méthode doit être laissé vide.

  • Le modificateur d’accès doit être Private.

Implémentation

L’implémentation consiste principalement à remplir le corps de la méthode partielle. L’implémentation se trouve généralement dans une classe partielle distincte de la définition et est écrite par un développeur qui souhaite étendre le code généré.

Private Sub QuantityChanged()  
'    Code for executing the desired action.  
End Sub  

L’exemple précédent duplique la signature dans la déclaration exactement, mais les variantes sont possibles. En particulier, d’autres modificateurs peuvent être ajoutés, tels que Overloads ou Overrides. Overrides Un seul modificateur est autorisé. Pour plus d’informations sur les modificateurs de méthode, consultez l’instruction Sub.

Utiliser

Vous appelez une méthode partielle, car vous appelez toute autre Sub procédure. Si la méthode a été implémentée, les arguments sont évalués et le corps de la méthode est exécuté. Toutefois, n’oubliez pas que l’implémentation d’une méthode partielle est facultative. Si la méthode n’est pas implémentée, un appel à celui-ci n’a aucun effet et les expressions transmises en tant qu’arguments à la méthode ne sont pas évaluées.

Exemple :

Dans un fichier nommé Product.Designer.vb, définissez une Product classe qui a une Quantity propriété.

Partial Class Product

    Private _Quantity As Integer

    Property Quantity() As Integer
        Get
            Return _Quantity
        End Get
        Set(ByVal value As Integer)
            _Quantity = value
            QuantityChanged()
        End Set
    End Property

    ' Provide a signature for the partial method.
    Partial Private Sub QuantityChanged()
    End Sub
End Class

Dans un fichier nommé Product.vb, fournissez une implémentation pour QuantityChanged.

Partial Class Product

    Private Sub QuantityChanged()
        MsgBox("Quantity was changed to " & Me.Quantity)
    End Sub

End Class

Enfin, dans la méthode Main d’un projet, déclarez une Product instance et fournissez une valeur initiale pour sa Quantity propriété.

Module Module1

    Sub Main()
        Dim product1 As New Product With {.Quantity = 100}
    End Sub

End Module

Une boîte de message doit s’afficher pour afficher ce message :

Quantity was changed to 100

Voir aussi