다음을 통해 공유


UI 자동화 값 제어 패턴 구현

비고

이 설명서는 System.Windows.Automation 네임스페이스에 정의된 관리되는 UI 자동화 클래스를 사용하려는 .NET Framework 개발자를 위한 것입니다. UI 자동화에 대한 최신 정보는 Windows Automation API: UI 자동화참조하세요.

이 항목에서는 이벤트 및 속성에 대한 정보를 포함하여 구현하기 IValueProvider위한 지침과 규칙을 소개합니다. 추가 참조에 대한 링크는 항목 끝에 나열되어 있습니다.

ValuePattern 컨트롤 패턴은 범위에 걸쳐 있지 않고 문자열로 나타낼 수 있는 내장 값이 있는 컨트롤을 지원하는 데 사용됩니다. 컨트롤 및 해당 설정에 따라 이 문자열을 편집할 수 있습니다. 이 패턴을 구현하는 컨트롤의 예제는 UI 자동화 클라이언트에 대한 컨트롤 패턴 매핑을 참조하세요.

구현 지침 및 규칙

값 컨트롤 패턴을 구현할 때 다음 지침 및 규칙에 유의하세요.

  • ListItemTreeItem과 같은 컨트롤은 항목의 값이 편집 가능하다면, 현재 컨트롤의 편집 모드와 관계없이 ValuePattern를 지원해야 합니다. 자식 항목이 편집 가능할 경우, 부모 컨트롤도 ValuePattern을 지원해야 합니다.

편집 가능한 목록 항목입니다. 편집 가능한 목록 항목의 예

  • 한 줄 편집 컨트롤은 자체 구현을 통해 콘텐츠에 프로그래밍 방식으로 액세스할 수 있도록 지원합니다 IValueProvider. 그러나 여러 줄 편집 컨트롤은 IValueProvider을(를) 구현하지 않습니다. 대신 ITextProvider을(를) 구현하여 콘텐츠에 대한 액세스를 제공합니다.

  • 여러 줄 편집 컨트롤의 텍스트 내용을 검색하려면 컨트롤이 ITextProvider을 구현해야 합니다. 그러나 ITextProvider 컨트롤의 값 설정은 지원하지 않습니다.

  • IValueProvider 에서는 서식 지정 정보 또는 부분 문자열 값 검색을 지원하지 않습니다. 이러한 시나리오에서 구현 ITextProvider 합니다.

  • IValueProvider 는 색 값(예: "노란색")과 해당하는 내부 RGB 구조 간의 문자열 매핑을 지원하는 Microsoft Word의 색 선택 선택 컨트롤(아래 그림 참조)과 같은 컨트롤에 의해 구현되어야 합니다.

노란색이 강조 표시된 색 선택기입니다. 색 견본 문자열 매핑의 예

IValueProvider에 필요한 멤버

구현 IValueProvider하려면 다음 속성과 메서드가 필요합니다.

필수 멤버 멤버 형식 비고
IsReadOnlyProperty 재산 없음
ValueProperty 재산 없음
SetValue 메서드 없음

예외

공급자는 다음 예외를 반드시 throw해야 합니다.

예외 유형 조건
InvalidOperationException SetValue

- 로캘 관련 정보가 잘못된 형식(예: 잘못된 형식의 날짜)으로 컨트롤에 전달되는 경우
ArgumentException SetValue

- 새 값을 문자열에서 컨트롤이 인식하는 형식으로 변환할 수 없는 경우
ElementNotEnabledException SetValue

- 사용하도록 설정되지 않은 컨트롤을 조작하려고 시도하는 경우

참고하십시오