Comment : fractionner une classe en classes partielles (Concepteur de classes)How to: Split a Class into Partial Classes (Class Designer)

Vous pouvez diviser la déclaration d’une classe ou d’une structure en plusieurs déclarations à l’aide du mot clé Partial en Visual Basic ou du mot clé partial en C#.You can divide the declaration of a class or structure among several declarations by using the Partial keyword in Visual Basic or the partial keyword in C#. Vous pouvez utiliser autant de déclarations partielles que vous le souhaitez, dans autant de fichiers sources que vous le souhaitez ou dans un même fichier source.You can use as many partial declarations as you want, in as many different source files as you want, or in one source file. Toutefois, toutes les déclarations doivent être dans le même assembly et le même espace de noms.However, all the declarations must be in the same assembly and the same namespace.

Les classes partielles sont utiles dans plusieurs situations.Partial classes are useful in several situations. Par exemple, lorsque vous travaillez sur de grands projets, le fait de séparer une classe en plusieurs fichiers permet à plusieurs programmeurs de travailler dessus en même temps.For example, when you are working on large projects, separating a class into more than one file enables more than one programmer to work on it at the same time. Lorsque vous utilisez du code généré par Visual Studio, vous pouvez modifier la classe sans avoir à recréer le fichier source.When you are working with code that Visual Studio generates, you can change the class without having to re-create the source file. Le code Windows Forms et le code wrapper de service web sont des exemples de code généré par Visual Studio. Vous pouvez donc écrire du code qui utilise des classes autogénérées sans avoir à modifier le fichier créé par Visual Studio.(Examples of code that Visual Studio generates include Windows Forms and Web Service wrapper code.) You can thus create code that uses auto-generated classes without having to modify the file that Visual Studio creates.

Il existe deux types de méthodes partielles.There are two kinds of partial methods. En C#, on parle de méthodes déclarantes et implémentantes. En Visual Basic, on parle de méthodes de déclaration et d’implémentation.In C#, they are called declaring and implementing; in Visual Basic, they are called declaration and implementation.

Le Concepteur de classes prend en charge les classes et les méthodes partielles.Class Designer supports partial classes and methods. La forme de type du diagramme de classes fait référence à un emplacement de déclaration unique de la classe partielle.The type shape in the class diagram refers to a single declaration location for the partial class. Si la classe partielle est définie dans plusieurs fichiers, vous pouvez spécifier quel emplacement de déclaration le Concepteur de classes utilisera en définissant la propriété Nouvel emplacement de membre dans la fenêtre Propriétés.If the partial class is defined in multiple files, you can specify which declaration location Class Designer will use by setting the New Member Location property in the Properties window. Autrement dit, lorsque vous double-cliquez sur une forme de classe, le Concepteur de classes accède au fichier source qui contient la déclaration de classe identifiée par la propriété Nouvel emplacement de membre.That is, when you double-click a class shape, Class Designer goes to the source file that contains the class declaration identified by the New Member Location property. Lorsque vous double-cliquez sur une méthode partielle dans une forme de classe, le Concepteur de classes accède à la déclaration de méthode partielle.When you double-click a partial method in a class shape, Class Designer goes to the partial method declaration. En outre, dans la fenêtre Propriétés, la propriété Nom de fichier référence l’emplacement de la déclaration.Also, in the Properties window, the File Name property refers to the declaration location. Pour les classes partielles, la propriété Nom de fichier répertorie tous les fichiers qui contiennent du code de déclaration et d’implémentation pour cette classe.For partial classes, File Name lists all of the files that contain declaration and implementation code for that class. Toutefois, pour les méthodes partielles, la propriété Nom de fichier répertorie uniquement le fichier qui contient la déclaration de méthode partielle.However, for partial methods, File Name lists only the file that contains the partial method declaration.

L’exemple suivant fractionne la définition de la classe Employee en deux déclarations, dont chacune définit une procédure différente.The following examples split the definition of class Employee into two declarations, each of which defines a different procedure. Les deux définitions partielles des exemples peuvent se trouver dans le même fichier source ou dans deux fichiers sources différents.The two partial definitions in the examples could be in one source file or in two different source files.

Note

Visual Basic utilise des définitions de classe partielle pour séparer le code généré par Visual Studio du code créé par l’utilisateur.Visual Basic uses partial-class definitions to separate Visual Studio—generated code from user-authored code. Le code est réparti dans des fichiers sources distincts.The code is separated into discrete source files. Par exemple, le Concepteur Windows Form définit des classes partielles pour des contrôles tels que Form.For example, the Windows Form Designer defines partial classes for controls such as Form. Vous ne devez pas modifier le code généré dans ces contrôles.You should not modify the generated code in these controls.

Pour plus d’informations sur les types partiels en Visual Basic, consultez Partiel.For more information about partial types in Visual Basic, see Partial.

ExempleExample

Pour fractionner une définition de classe en Visual Basic, utilisez le mot clé Partial, comme indiqué dans l’exemple suivant.To split a class definition in Visual Basic, use the Partial keyword, as shown in the following example.

' First part of class definition.  
Partial Public Class Employee  
    Public Sub CalculateWorkHours()  
    End Sub  
End Class  

' Second part of class definition.  
Partial Public Class Employee  
    Public Sub CalculateTaxes()  
    End Sub  
End Class  

ExempleExample

Pour fractionner une définition de classe en C#, utilisez le mot clé partial, comme indiqué dans l’exemple suivant.To split a class definition in C#, use the partial keyword, as shown in the following example.

// First part of class definition.  
public partial class Employee  
{  
    public void CalculateWorkHours()  
    {  
    }  
}  

// Second part of class definition.  
public partial class Employee  
{  
    public void CalculateTaxes()  
    {  
    }  
}  

Voir aussiSee also

Classes et méthodes partielles Partial Classes and Methods
partial (type) partial (Type)
partielle, méthode (Référence C#) partial (Method) (C# Reference)
PartialPartial