Metoda LanguageService.CreateExpansionFunction —
Tworzy ExpansionFunction klasy.
Przestrzeń nazw: Microsoft.VisualStudio.Package
Zestawy: Microsoft.VisualStudio.Package.LanguageService.9.0 (w Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
Microsoft.VisualStudio.Package.LanguageService.10.0 (w Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
Microsoft.VisualStudio.Package.LanguageService.11.0 (w Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
Microsoft.VisualStudio.Package.LanguageService (w Microsoft.VisualStudio.Package.LanguageService.dll)
Składnia
'Deklaracja
Public Overridable Function CreateExpansionFunction ( _
provider As ExpansionProvider, _
functionName As String _
) As ExpansionFunction
public virtual ExpansionFunction CreateExpansionFunction(
ExpansionProvider provider,
string functionName
)
Parametry
- provider
Typ: Microsoft.VisualStudio.Package.ExpansionProvider
[w] ExpansionProvider , Jest użycie ExpansionFunction.
- functionName
Typ: System.String
[w] Nazwa funkcji ExpansionFunction reprezentuje.
Wartość zwracana
Typ: Microsoft.VisualStudio.Package.ExpansionFunction
Jeśli się powiedzie, zwraca ExpansionFunction obiektu; w przeciwnym razie zwraca wartość null.
Uwagi
Funkcja rozszerzenia przedstawia funkcja osadzona w szablonie urywek kodu, który ma zostać wywołana, aby podać wartości jednego lub więcej, jak szablon jest rozwinięty.Jeśli zamierzasz obsługuje rozszerzenia funkcji w wstawek kodu programu języka, musi pochodzić z klasy z ExpansionFunction i zwrócić wystąpienia tej klasy z tej metody.
Metody podstawowej zwraca wartość null, wskazując, że funkcje rozszerzenia nie są obsługiwane domyślnie.
Przykłady
Ten przykład przedstawia jedną z możliwych implementacji metody CreateExpansionFunction.Funkcje dwóch rozszerzeń są implementowane w dwóch odrębnych grup MyClassNameExpansionFunction i MyEnumAccessTypeExpansionFunction.Zobacz ExpansionFunction klasy dla bardziej szczegółowych wersji tego przykładu.
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;
}
}
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Przy użyciu bibliotek z częściowo zaufanego kodu..