다음을 통해 공유


ProvideOptionPageAttribute 클래스

정의

사용자가 사용자 지정 도구 옵션 페이지를 통해 VSPackage를 구성할 수 있도록 독립 개체에 이 특성을 적용합니다.

public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideOptionPageAttribute : Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideOptionPageAttribute = class
    inherit ProvideOptionDialogPageAttribute
Public NotInheritable Class ProvideOptionPageAttribute
Inherits ProvideOptionDialogPageAttribute
상속
특성

예제

아래 예제에서 의 instance ProvideOptionPageAttribute VSPackage 구현에 적용되어 에서 파생된 DialogPage클래스 DesignerOptionsPage를 등록하고 도구 옵션 페이지를 VSPackage에 제공합니다.

에서 DialogPage 파생된 클래스는 재정의할 수 있는 Visual Studio 설정 기능의 기본 구현과 함께 제공됩니다. 예제 ProvideProfileAttribute 와 같이 이 Visual Studio 설정이 VSPackage 구현에 적용되는 경우 IDE는 이 Visual Studio 설정을 지원합니다. Visual Studio 설정 지원에 대한 자세한 내용은 사용자 설정 및 옵션 확장을 참조하세요.

using Microsoft.VisualStudio.Shell;  
namespace Example  
{  
[DefaultRegistryRoot("Software\\Microsoft\\VisualStudio\\8.0")]   
[ProvideOptionPage(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1000, 1001, true)]   
[ProvideProfileAttribute(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1002, 1003, true)]  
[ProvideProfileAttribute(typeof(PersistCurrentDesign), "MyDesigner","CurrentDesign", 1004, 1005, false)]  
[Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]  
public class MyPackage : Package  
{  
//Implementation here  
}  

[Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY")]  
internal class DesignerOptionsPage: DialogPage {  
//Implementation here  
}  

[Guid("ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ")]  
internal class PersistCurrentDesign: IProfileManager {  
//Implementation here  
}  

설명

구현자에 대한 참고 사항

ProvideOptionPageAttribute VSPackage를 구현하는 클래스에 를 적용합니다. 이 특성을 사용하면 특정 독립 개체가 사용자 지정 도구 옵션 페이지를 통해 VSPackage의 사용자에게 구성 액세스 권한을 제공하는지 등록할 수 있습니다 .

특성 컨텍스트

적용 대상 VSPackage는 관리되는 패키지 프레임워크 DialogPage 를 통해 또는 Visual Studio SDK 코드를 사용하여 구현된 사용자 지정 도구 옵션 페이지를 통해 구성을 허용합니다.
반복 가능 Yes
필수 특성 DefaultRegistryRootAttribute
잘못된 특성 없음

호출자 참고 사항

이 특성은 등록 목적으로만 사용되며 코드의 런타임 동작에는 영향을 주지 않습니다.

ProvideOptionPageAttribute Visual Studio 설정 메커니즘을 IProfileManager 통해 VSPackage 상태의 일부 또는 전체를 유지하기 위한 특정 VSPackage 지원을 제공하거나 DialogPage 구현하는 지정된 클래스를 등록합니다. 구현 클래스에서 유지하는 상태 정보를 Visual Studio 설정 범주라고 하며 레지스트리의 해당 정의 항목을 사용자 지정 설정 지점이라고 합니다.

참고

관리 패키지 프레임워크 기반 사용자 지정 도구 옵션 페이지가 로드되면 IDE는 에 등록된 ProvideOptionPageAttribute 개체를 구현하는 것으로 인스턴스화합니다. 관리되는 패키지 프레임워크 도구 옵션 페이지 지원은 VSPackage 자체가 아닌 자체 개체에서 구현되어야 합니다.

인스턴스 ProvideOptionPageAttribute를 만들고 적용하는 방법에 대한 자세한 내용은 아래 및 ProvideOptionPageAttribute예제를 참조하세요.

생성자

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, Int32)

ProvideOptionPageAttribute의 새 instance 인스턴스화합니다.

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String)

ProvideOptionPageAttribute의 새 instance 인스턴스화합니다.

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String[])

ProvideOptionPageAttribute의 새 instance 인스턴스화합니다.

속성

CategoryDescriptionResourceId

페이지의 부모 범주에 대한 지역화된 설명을 포함하는 리소스의 ID입니다. 이 속성은 SupportsAutomation == true 및 SupportsProfiles == true인 경우에만 사용됩니다. 지역화된 설명이 가져오기/내보내기 설정 마법사에 표시됩니다.

CategoryName

도구 옵션 페이지의 범주에 대한 정규화된 비로컬 이름을 가져옵니다.

CategoryPackageGuid

이 페이지가 등록된 범주를 소유하는 패키지의 ID입니다. 설정되지 않은 경우 패키지는 이 특성이 적용되는 패키지로 간주됩니다. 이 속성은 SupportsAutomation == true 및 SupportsProfiles == true인 경우에만 사용됩니다. Guid.ToString("B")을 사용하여 Guid에서 이 항목을 생성합니다.

CategoryResourceID

도구 옵션 페이지의 범주 리소스 ID를 가져옵니다.

DescriptionResourceId

페이지의 지역화된 설명을 포함하는 리소스의 ID입니다. 이 속성은 SupportsAutomation == true 및 SupportsProfiles == true인 경우에만 사용됩니다. 지역화된 설명이 가져오기/내보내기 설정 마법사에 표시됩니다.

IsInUnifiedSettings

새 등록을 만들어 이 페이지의 설정이 통합 설정에 온보딩되었는지 여부를 나타내는 값을 가져오거나 설정합니다. true이면 통합 설정을 사용하도록 설정하면 페이지가 숨겨지므로 해당 설정이 중복되지 않습니다.

IsServerAware

이 페이지의 UI에 ISettingsManager3 또는 유사한 기능이 있는 API를 사용하여 연결된 클라이언트-서버 시나리오에서 서버와 동기화되는 설정을 표시하는지 여부를 나타내는 값을 가져오거나 설정합니다.

Keywords

이 옵션 페이지의 검색 가능한 키워드를 가져옵니다. 각 키워드(keyword) 리터럴 문자열, 단일 키워드(keyword) 가리키는 리소스 이름/ID("@"/"#" 접두사) 또는 세미콜론으로 구분된 키워드 목록을 가리키는 리소스 이름/ID("@"/"#"가 접두사)일 수 있습니다.

NoShowAllView

집계된 도구 옵션 페이지가 표시되는지 여부를 가져오거나 설정합니다.

PageName

도구 옵션 페이지의 정식 비로컬화된 이름을 가져옵니다.

PageNameResourceId

페이지의 이름 리소스 ID를 가져옵니다.

(다음에서 상속됨 ProvideOptionDialogPageAttribute)
PageType

페이지의 형식을 가져옵니다.

(다음에서 상속됨 ProvideOptionDialogPageAttribute)
ProfileMigrationType

프로필 마이그레이션 유형을 설정합니다.

ProvidesLocalizedCategoryName

패키지에 범주 이름에 대한 지역화된 리소스가 있는지 여부를 확인합니다.

Sort

옵션 페이지의 정렬 순서입니다. 옵션 페이지는 다음 순서로 정렬됩니다.

1.  The General page
2.  Pages with a Sort value, sorted from low to high.
3.  Pages without a Sort value, sorted alphabetically.
SupportsAutomation

도구 옵션 페이지 구현에서 자동화를 지원하는지 여부를 가져옵니다.

SupportsProfiles

도구 옵션 페이지 구현에서 Visual Studio 설정 메커니즘을 사용하여 상태를 유지할지 여부를 가져오거나 설정합니다.

TypeId

의 현재 instance 가져옵니다ProvideOptionPageAttribute.

UnifiedSettingsCategoryMoniker

= false인 IsInUnifiedSettings 페이지의 경우 통합 설정 계층 구조에서 부모 범주의 모니커를 가져오거나 설정합니다. 이미 존재하는 모니커이거나, 존재하는 모니커와 ''을 더한 모니커일 수 있습니다. -구분된 세그먼트입니다. 후자의 경우 By라는 CategoryResourceID 새 범주가 통합 설정 계층 구조에 만들어지고 이 페이지가 삽입됩니다. 그렇지 않으면 이 페이지가 기존 범주 아래에 삽입됩니다.

VisibilityCmdUIContexts

세미콜론으로 구분된 UIContext GUID 목록입니다. 옵션 페이지는 목록의 UIContext가 활성 상태일 때 표시됩니다. 이 옵션을 지정하지 않으면 옵션 페이지가 항상 표시됩니다.

메서드

GetPackageRegKeyPath(Guid)

VSPackage의 레지스트리 경로(애플리케이션의 레지스트리 루트를 기준으로)를 가져옵니다.

(다음에서 상속됨 RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

도구 옵션 페이지를 등록합니다.

Unregister(RegistrationAttribute+RegistrationContext)

레지스트리에서 도구 옵션 페이지 키를 제거합니다.

적용 대상