Sdílet prostřednictvím


ProvideMenuResourceAttribute Třída

Definice

Poskytuje registrační informace o prostředcích nabídky používaných v balíčku VSPackage. Tato třída se nemůže dědit.

public ref class ProvideMenuResourceAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
public ref class ProvideMenuResourceAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideMenuResourceAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideMenuResourceAttribute = class
    inherit RegistrationAttribute
Public NotInheritable Class ProvideMenuResourceAttribute
Inherits RegistrationAttribute
Dědičnost
ProvideMenuResourceAttribute
Atributy

Poznámky

Kdy volat

ProvideMenuResourceAttribute Použijte na odvozenou Microsoft.VisualStudio.Packagetřídu nebo třídu, která implementujeIVsPackage, pokud třída obsahuje jeden nebo více prostředků nabídky. Zaregistrujte prostředky pomocí regpkg.exe nebo podobného registračního nástroje. Další informace najdete v tématu Registrace balíčků VSPackage.

Základní využití

Třída ProvideMenuResourceAttribute definuje ID prostředku a číslo verze prostředku nabídky, což nástroji pro registraci, jako je regpkg.exe, umožňuje zaregistrovat prostředek nabídky v sadě Visual Studio. Když Visual Studio narazí na balíček VSPackage s registrovaným prostředkem nabídky, načte informace o prostředku z balíčku VSPackage nebo spravované nebo satelitní knihovny DLL balíčku a sloučí nabídku do systému nabídek sady Visual Studio. Pokud chcete použít ProvideMenuResourceAttribute, umístěte ho na odvozenou Packagetřídu nebo třídu, která implementuje IVsPackage.

Aby se prostředek nabídky správně sloučil, musí knihovna DLL prostředků dodržovat konvence satelitní knihovny DLL. Musí mít název <assemblyfile>UI.dll a musí být umístěn do příslušného lokalizovaného podadresáře. Další informace o nabídkách a prostředcích nabídek najdete v tématu How VSPackages Add User Interface Elements and Commands, Menus, and Toolbars.

Tato třída atributu se používá pouze k poskytování dat pro externí registrační nástroje. Nemá žádný vliv na běhové chování VSPackage.

Poznámka

Jazyk C# automaticky připojí slovo "Attribute" k názvu libovolné třídy atributu. V kódu jazyka C# odkaz na tento atribut použijte jako ProvideMenuResource.

Položky registru

  • Následující položky registru jsou vytvořeny uživatelem ProvideMenuResourceAttribute:

  • <VSROOT>\Menus\

  • <VSROOT>\Menus\{PackageGuid}=", ResourceID, Version"

Ukázky

Implementace ProvideMenuResourceAttribute třídy najdete ve spravovaných ukázkách. Standardní umístění pro toto a všechny ostatní atributy použité pro automatickou registraci sousedí s implementací Package třídy v VsPkg.cs, VsPkg.vb nebo VsPkg.cpp v závislosti na jazyce použitém v ukázce.

Konstruktory

ProvideMenuResourceAttribute(Int16, Int32)

Tento konstruktor vytvoří nový ProvideMenuResourceAttribute objekt s daným ID prostředku a číslem verze.

ProvideMenuResourceAttribute(String, Int32)

Inicializuje novou instanci ProvideMenuResourceAttribute se zadaným ID a verzí prostředku.

Vlastnosti

IconMappingFilename

Cesta k souboru CSV, která mapuje identifikátory ikon definované v prostředku nabídky na obrázky. Cesta je buď relativní cesta implicitně rootovaná na $PackageFolder$, nebo absolutní cesta explicitně kořenová v adresáři definovaném proměnnou prostředí (např. %UserProfile%\dir1\dir2\MyMappingFile.csv).

Formát souboru CSV je:

Icon guid, Icon id, Moniker guid, Moniker id
b714fcf7-855e-4e4c-802a-1fd87144ccad,1,fda30684-682d-421c-8be4-650a2967058e,100
{b714fcf7-855e-4e4c-802a-1fd87144ccad},2,{fda30684-682d-421c-8be4-650a2967058e},200
etc...
ResourceID

Vlastnost ResourceID vrátí hodnotu ID prostředku nastaveného v konstruktoru.

TypeId

Přepište vlastnost TypeID, aby odvozené třídy RegistrationAttribute fungovaly se System.ComponentModel.TypeDescriptor.GetAttributes(...). Atribut odvozený z tohoto atributu bude muset přepsat tuto vlastnost pouze v případě, že potřebuje lepší kontrolu nad instancemi, které lze použít na třídu.

(Zděděno od RegistrationAttribute)
Version

Vrátí číslo verze prostředku nabídky.

Metody

GetPackageRegKeyPath(Guid)

Získá cestu registru (vzhledem ke kořenovému adresáři registru aplikace) VSPackage.

(Zděděno od RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Poskytuje informace o registraci balíčku VSPackage při zavolání externím registračním nástrojem, jako je například regpkg.exe. Další informace najdete v tématu Registrace balíčků VSPackage.

Unregister(RegistrationAttribute+RegistrationContext)

Volána pro zrušení registrace tohoto atributu s daným kontextem.

Platí pro