다음을 통해 공유


설정 범주 만들기

이 연습에서는 Visual Studio 설정 범주를 만들고 이를 사용하여 설정 파일에 값을 저장하고 값을 복원합니다. 설정 범주는 "사용자 지정 설정 지점"으로 나타나는 관련 속성 그룹입니다. 즉, 가져오기 및 내보내기 설정 마법사의 확인란입니다. (도구 메뉴에서 찾을 수 있습니다.) 설정은 범주로 저장되거나 복원되며 개별 설정은 마법사에 표시되지 않습니다. 자세한 내용은 환경 설정을 참조하세요.

DialogPage 클래스에서 파생하여 설정 범주를 만듭니다.

이 연습을 시작하려면 먼저 옵션 만들기 페이지의 첫 번째 섹션을 완료해야 합니다. 결과 옵션 속성 그리드를 사용하면 범주의 속성을 검사하고 변경할 수 있습니다. 속성 범주를 설정 파일에 저장한 후 파일을 검사하여 속성 값이 저장되는 방식을 확인합니다.

설정 범주 만들기

이 섹션에서는 사용자 지정 설정 지점을 사용하여 설정 범주의 값을 저장하고 복원합니다.

설정 범주를 만들려면

  1. 옵션 만들기 페이지를 완료합니다.

  2. VSPackage.resx 파일을 열고 다음의 세 가지 문자열 리소스를 추가합니다.

    속성
    106 내 범주
    107 내 설정
    108 OptionInteger 및 OptionFloat

    이렇게 하면 범주 이름이 "내 범주"이고 개체가 "내 설정"이며 범주 설명이 "OptionInteger 및 OptionFloat"인 리소스가 만들어집니다.

    참고 항목

    이 세 가지 중 범주 이름만 가져오기 및 내보내기 설정 마법사에 표시되지 않습니다.

  3. MyToolsOptionsPackage.cs에서 다음 예제와 같이 OptionFloat라는 float 속성을 OptionPageGrid 클래스에 추가합니다.

    public class OptionPageGrid : DialogPage
    {
        private int optionInt = 256;
        private float optionFloat = 3.14F;
    
        [Category("My Options")]
        [DisplayName("My Integer option")]
        [Description("My integer option")]
        public int OptionInteger
        {
            get { return optionInt; }
            set { optionInt = value; }
        }
        [Category("My Options")]
        [DisplayName("My Float option")]
        [Description("My float option")]
        public float OptionFloat
        {
            get { return optionFloat; }
            set { optionFloat = value; }
        }
    }
    

    참고 항목

    "My Category"라는 OptionPageGrid 범주는 이제 OptionIntegerOptionFloat의 두 가지 속성으로 구성됩니다.

  4. MyToolsOptionsPackage 클래스에 ProvideProfileAttribute을 추가하고 CategoryName에 "My Category", ObjectName에 "My Settings"를 지정하고, isToolsOptionPage를 true로 설정합니다. categoryResourceID, objectNameResourceID 및 DescriptionResourceID를 이전에 만든 해당 문자열 리소스 ID로 설정합니다.

    [ProvideProfileAttribute(typeof(OptionPageGrid),
        "My Category", "My Settings", 106, 107, isToolsOptionPage:true, DescriptionResourceID = 108)]
    
  5. 프로젝트를 빌드하고 디버깅을 시작합니다. 이제 실험적 인스턴스의 내 그리드 페이지에 정수 및 부동 소수점 값이 모두 있는 것을 볼 수 있습니다.

설정 파일 검사

이 섹션에서는 속성 범주 값을 설정 파일로 내보냅니다. 파일을 검사한 후 값을 속성 범주로 다시 가져옵니다.

  1. F5 키를 눌러 디버그 모드에서 프로젝트를 시작합니다. 그러면 실험적 인스턴스가 시작됩니다.

  2. 도구>옵션 대화 상자가 열립니다.

  3. 왼쪽 창의 트리 보기에서 내 범주를 확장한 다음, 내 그리드 페이지를 클릭합니다.

  4. OptionFloat 값을 3.1416으로, OptionInteger 값을 12로 변경합니다. 확인을 클릭합니다.

  5. 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다.

    설정 가져오기 및 내보내기 마법사가 표시됩니다.

  6. 선택한 환경 설정 내보내기가 선택되어 있는지 확인한 후 다음을 클릭합니다.

    내보낼 설정 선택 페이지가 나타납니다.

  7. 내 설정을 클릭합니다.

    설명OptionInteger 및 OptionFloat로 변경됩니다.

  8. 내 설정이 선택된 유일한 범주인지 확인한 후 다음을 클릭합니다.

    설정 파일 이름 지정 페이지가 나타납니다.

  9. 새 설정 파일의 이름을 MySettings.vssettings로 지정하고 적절한 디렉터리에 저장합니다. Finish를 클릭합니다.

    .vssettings 파일은 Visual Studio 설정 파일입니다. 파일의 스키마가 열려 있습니다. 가장 일반적으로 스키마는 각 범주가 태그인 XML 구조를 따르며, 태그 자체에는 하위 범주 태그가 포함될 수 있습니다. 이러한 하위 범주 태그에는 속성 값 태그가 포함될 수 있습니다. 대부분의 패키지는 공통 구조를 사용하지만 Visual Studio의 모든 패키지는 선택한 스키마를 사용하여 파일에 임의 XML을 제공할 수 있습니다.

    내보내기 완료 페이지에 설정이 내보내졌다고 보고됩니다.

  10. 파일 메뉴에서 열기를 가리킨 다음 파일을 클릭합니다. MySettings.vssettings를 찾아서 엽니다.

    내보낸 속성 범주는 파일의 다음 섹션에서 찾을 수 있습니다(GUID는 다를 수 있음).

    <Category name="My Category_My Settings"
          Category="{4802bc3e-3d9d-4591-8201-23d1a05216a6}"
          Package="{6bb6942e-014c-489e-a612-a935680f703d}"
          RegisteredName="My Category_My Settings">
          PackageName="MyToolsOptionsPackage">
       <PropertyValue name="OptionFloat">3.1416</PropertyValue>
       <PropertyValue name="OptionInteger">12</PropertyValue>
    </Category>
    

    전체 범주 이름은 범주 이름에 밑줄을 추가하고 그 뒤에 개체 이름을 추가하여 구성됩니다. OptionFloat 및 OptionInteger는 내보낸 값과 함께 범주에 나타납니다.

  11. 설정 파일을 변경하지 않고 닫습니다.

  12. 도구 메뉴에서 옵션을 클릭하고 내 범주를 확장하고 내 그리드 페이지를 클릭한 다음, OptionFloat 값을 1.0으로, OptionInteger 값을 1로 변경합니다. 확인을 클릭합니다.

  13. 도구 메뉴에서 가져오기 및 내보내기 설정을 클릭하고 선택한 환경 설정 가져오기를 선택한 후 다음을 클릭합니다.

    현재 설정 저장 페이지가 나타납니다.

  14. 아니요. 새 설정만 가져옵니다를 선택한 후 다음을 클릭합니다.

    가져올 설정 컬렉션 선택 페이지가 나타납니다.

  15. 트리 뷰의 내 설정 노드에서 MySettings.vssettings 파일을 선택합니다. 파일이 트리 뷰에 표시되지 않으면 찾아보기를 클릭하여 찾습니다. 다음을 클릭합니다.

    가져올 설정 선택 대화 상자가 나타납니다.

  16. 내 설정이 선택되었는지 확인한 다음, 마침을 클릭합니다. 가져오기 완료 페이지가 나타나면 닫기를 클릭합니다.

  17. 도구 메뉴에서 옵션을 클릭하고, 내 범주를 확장한 후 내 그리드 페이지를 클릭하고 속성 범주 값이 복원되었는지 확인합니다.