Partager via


ProvideLanguageCodeExpansionAttribute, constructeur

Initialise une nouvelle instance de la classe ProvideLanguageCodeExpansionAttribute.

Espace de noms :  Microsoft.VisualStudio.Shell
Assembly :  Microsoft.VisualStudio.Shell.11.0 (dans Microsoft.VisualStudio.Shell.11.0.dll)

Syntaxe

'Déclaration
Public Sub New ( _
    languageService As Object, _
    languageName As String, _
    languageResourceId As Integer, _
    languageIdentifier As String, _
    pathToSnippetIndexFile As String _
)
public ProvideLanguageCodeExpansionAttribute(
    Object languageService,
    string languageName,
    int languageResourceId,
    string languageIdentifier,
    string pathToSnippetIndexFile
)

Paramètres

  • languageService
    Type : System.Object
    [in] c'est une chaîne contenant GUID ou un type représentant la classe qui implémente le service de langage.Le service de langage GUID est dérivé de cette chaîne ou type.
  • languageName
    Type : System.String
    [in] le nom du langage.Ce nom est utilisé dans le Registre pour la clé de Registre et les noms d'entrée.
  • languageResourceId
    Type : System.Int32
    [in] l'ID de ressource pour la version localisée du nom de langue.Cela est utilisé pour présenter le nom de langue dans des boîtes de dialogue et d'autres éléments de l'interface utilisateurs.
  • languageIdentifier
    Type : System.String
    [in] chaîne d'Un contenant un détail d'identificateur au langage qui est utilisé pour marquer et identifier des extraits de code.
  • pathToSnippetIndexFile
    Type : System.String
    [in] chaîne d'Un contenant le chemin d'accès au fichier d'index d'extraits de code pour le langage.

Remarques

La mise en page suivante de Registre montre où chacun des paramètres requis est utilisé.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[X.Y]\Languages\
  Language Services\
    CodeExpansions\
      [languageName]\
        (Default) = reg_sz: [languageService]
         DisplayName  = reg_sz: [languageResourceId]
         IndexPath    = reg_sz: [pathToSnippetIndexFile]
         LangStringID = reg_sz: [languageIdentifier]
         Package      = reg_sz: [Package GUID]

La valeur de [Package GUID] est automatiquement obtenue à partir de la classe qui implémente l'interface d'IVsPackage dans l'assembly.

Outre des paramètres requis répertoriés dans la section de paramètres, le constructeur accepte également des paramètres nommés facultatifs après les paramètres requis.Il s'agit d'un formulaire spécial pris en charge uniquement dans des attributs définis par l'utilisateur.Ces paramètres nommés correspondent aux propriétés publiques sur cette classe qui ont deux commande get et opérateurs définis.

Pour savoir comment le fichier d'index d'extrait de code est créé et utilisé, consultez Prise en charge des extraits de code (managed de package).

Exemples

using Microsoft.VisualStudio.Shell;

namespace MyLanguagePackage
{
    internal class MyConstants
    {
        public const string languageName           = "MyLanguage";
        public const int    languageNameResourceID = 106;
        public const string languageIdentifier     = "mylanguage";
        public const string snippetsIndexFilePath   = @"%InstallRoot%\MyLanguage\SnippetsIndex.xml";
    }

    [ProvideCodeExpansion(typeof(MyLanguageService),            // Required
                            MyConstants.languageName,           // Required
                            MyConstants.languageNameResourceID, // Required
                            MyConstants.languageIdentifier,     // Required
                            MyConstants.snippetsIndexFilePath,  // Required
        // Optional code expansion properties
        SearchPaths = @"%InstallRoot%\MyLanguage\Snippets\%LCID%\Snippets;" +
                      @"\%MyDocs%\Code Snippets\MyLanguage\My Code Snippets";
                         )]

    class MyLanguagePackage
    {
    }
}

Sécurité .NET Framework

Voir aussi

Référence

ProvideLanguageCodeExpansionAttribute Classe

Microsoft.VisualStudio.Shell, espace de noms

Autres ressources

Prise en charge des extraits de code (managed de package)