ProvideMenuResourceAttribute 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
VSPackage에서 사용되는 메뉴 리소스에 대한 등록 정보를 제공합니다. 이 클래스는 상속될 수 없습니다.
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
- 상속
- 특성
설명
호출 시기
ProvideMenuResourceAttribute 클래스에 Microsoft.VisualStudio.Package하나 이상의 메뉴 리소스가 포함된 경우 를 구현하는 IVsPackage 파생 클래스 또는 클래스에 를 적용합니다. regpkg.exe 또는 유사한 등록 도구를 사용하여 리소스를 등록합니다. 자세한 내용은 VSPackage 등록을 참조하세요.
기본 사용
클래스는 ProvideMenuResourceAttribute
메뉴 리소스의 리소스 ID 및 버전 번호를 정의하여 regpkg.exe 같은 등록 도구가 Visual Studio에 메뉴 리소스를 등록할 수 있도록 합니다. Visual Studio에서 등록된 메뉴 리소스가 있는 VSPackage가 발견되면 VSPackage 또는 패키지의 관리 또는 위성 DLL에서 리소스 정보를 검색하고 메뉴를 Visual Studio 메뉴 시스템에 병합합니다. 를 사용 ProvideMenuResourceAttribute
하려면 를 구현하는 Package
파생 클래스 또는 클래스에 배치합니다 IVsPackage
.
메뉴 리소스가 올바르게 병합되도록 하려면 리소스 DLL이 위성 DLL 규칙을 따라야 합니다. 이름이 assemblyfile>UI.dll 적절하고 지역화된 하위 디렉터리에 배치되어야 <합니다. 메뉴 및 메뉴 리소스에 대한 자세한 내용은 VSPackages 사용자 인터페이스 요소 및 명령, 메뉴 및 도구 모음을 추가하는 방법을 참조하세요.
이 특성 클래스는 외부 등록 도구에 대한 데이터를 제공하는 데만 사용됩니다. VSPackage의 런타임 동작에는 영향을 주지 않습니다.
참고
C#은 특성 클래스의 이름에 "Attribute"라는 단어를 자동으로 추가합니다. C# 코드에서 이 특성을 로 참조합니다 ProvideMenuResource
.
레지스트리 항목
다음 레지스트리 항목은 에 의해
ProvideMenuResourceAttribute
생성됩니다.<VSROOT>\Menus\
<VSROOT>\Menus\{PackageGuid}=", ResourceID, Version"
샘플
관리되는 샘플에서 클래스의 ProvideMenuResourceAttribute 구현을 찾을 수 있습니다. 이 특성과 자동 등록에 사용되는 다른 모든 특성의 표준 위치는 샘플에서 사용되는 언어에 따라 VsPkg.cs, VsPkg.vb 또는 VsPkg.cpp 클래스의 Package 구현과 인접합니다.
생성자
ProvideMenuResourceAttribute(Int16, Int32) |
이 생성자는 지정된 리소스 ID 및 버전 번호를 사용하여 새 ProvideMenuResourceAttribute 개체를 만듭니다. |
ProvideMenuResourceAttribute(String, Int32) |
지정된 리소스 ID 및 버전을 사용하여 의 ProvideMenuResourceAttribute 새 instance 초기화합니다. |
속성
IconMappingFilename |
메뉴 리소스에 정의된 아이콘 식별자를 이미지 모니커에 매핑하는 CSV 파일의 경로입니다. 경로는 $PackageFolder$에 암시적으로 루트된 상대 경로이거나 환경 변수(예: "%UserProfile%\dir1\dir2\MyMappingFile.csv")로 정의된 디렉터리에 명시적으로 루트된 절대 경로입니다. CSV 파일의 형식은 다음과 같습니다.
|
ResourceID |
ResourceID 속성은 생성자에 설정된 리소스 ID 값을 반환합니다. |
TypeId |
RegistrationAttribute 파생 클래스가 System.ComponentModel.TypeDescriptor.GetAttributes(...)와 함께 작동하도록 하려면 TypeID 속성을 재정의합니다. 이 속성에서 파생된 특성은 클래스에 적용할 수 있는 인스턴스에 대한 더 나은 제어가 필요한 경우에만 이 속성을 재정의해야 합니다. (다음에서 상속됨 RegistrationAttribute) |
Version |
메뉴 리소스의 버전 번호를 반환합니다. |
메서드
GetPackageRegKeyPath(Guid) |
VSPackage의 레지스트리 경로(애플리케이션의 레지스트리 루트를 기준으로)를 가져옵니다. (다음에서 상속됨 RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
regpkg.exe 같은 외부 등록 도구에서 호출할 때 VSPackage에 대한 등록 정보를 제공합니다. 자세한 내용은 VSPackage 등록을 참조하세요. |
Unregister(RegistrationAttribute+RegistrationContext) |
지정된 컨텍스트에서 이 특성의 등록을 취소하기 위해 호출됩니다. |