Partager via


LanguageService.CreateExpansionFunction, méthode

Instancie une classe d'ExpansionFunction.

Espace de noms :  Microsoft.VisualStudio.Package
Assemblys :   Microsoft.VisualStudio.Package.LanguageService.9.0 (dans Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (dans Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (dans Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService (dans Microsoft.VisualStudio.Package.LanguageService.dll)

Syntaxe

'Déclaration
Public Overridable Function CreateExpansionFunction ( _
    provider As ExpansionProvider, _
    functionName As String _
) As ExpansionFunction
public virtual ExpansionFunction CreateExpansionFunction(
    ExpansionProvider provider,
    string functionName
)

Paramètres

Valeur de retour

Type : Microsoft.VisualStudio.Package.ExpansionFunction
Si réussi, retours un objet d'ExpansionFunction ; sinon, retours une valeur NULL.

Remarques

Une fonction d'expansion présente une fonction incorporée dans un modèle d'extrait de code qui doit être appelé pour fournir une ou plusieurs valeurs lorsque le modèle est développé.Si vous allez prendre en charge des fonctions d'expansion dans les extraits de code de votre langage, vous devez dériver une classe d'ExpansionFunction et retourner une instance de cette classe de cette méthode.

La méthode de base retourne une valeur NULL, indiquant que des fonctions d'expansion ne sont pas prises en charge par défaut.

Exemples

Cet exemple montre une implémentation possible de la méthode de CreateExpansionFunction.Les deux fonctions d'expansion sont implémentées dans deux classes, MyClassNameExpansionFunction et MyEnumAccessTypeExpansionFunction séparés.Voyez la classe d'ExpansionFunction pour une version plus détaillée de cet exemple.

using Microsoft.VisualStudio.Package;

namespace MyLanguagePackage
{
    public class MyLanguageService : LanguageService
    {
        public override ExpansionFunction CreateExpansionFunction(ExpansionProvider provider,
                                                                  string functionName)
        {
            ExpansionFunction function = null;
            if (String.Compare(functionName, "GetClassName", true) == 0)
            {
                function = new MyGetClassNameExpansionFunction(provider);
            }
            else if (String.Compare(functionName, "EnumAccessType", true) == 0)
            {
                function = new MyEnumAccessTypeExpansionFunction(provider);
            }
            return function;
        }
    }
}

Sécurité .NET Framework

Voir aussi

Référence

LanguageService Classe

Microsoft.VisualStudio.Package, espace de noms

ExpansionFunction