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
- provider
Type : Microsoft.VisualStudio.Package.ExpansionProvider
[in] ExpansionProvider qui est d'utiliser ExpansionFunction.
- functionName
Type : System.String
[in] le nom de la fonction qu'qu'ExpansionFunction représente.
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
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.