FeatureManager 클래스
기능 공급자 및 기능 커넥터를 관리합니다.
상속 계층 구조
System.Object
Microsoft.Windows.Design.Features.FeatureManager
네임스페이스: Microsoft.Windows.Design.Features
어셈블리: Microsoft.Windows.Design.Extensibility(Microsoft.Windows.Design.Extensibility.dll)
구문
‘선언
Public Class FeatureManager _
Implements IDisposable
public class FeatureManager : IDisposable
public ref class FeatureManager : IDisposable
type FeatureManager =
class
interface IDisposable
end
public class FeatureManager implements IDisposable
FeatureManager 형식에서는 다음과 같은 멤버를 노출합니다.
생성자
이름 | 설명 | |
---|---|---|
![]() |
FeatureManager | FeatureManager 클래스의 새 인스턴스를 초기화합니다. |
위쪽
속성
이름 | 설명 | |
---|---|---|
![]() |
Context | 이 기능 관리자의 편집 컨텍스트를 가져옵니다. |
![]() |
MetadataProvider | 이 기능 관리자에 대한 형식 메타데이터를 제공할 수 있는 사용자 지정 메타데이터 공급자를 가져오거나 설정합니다. |
![]() |
PendingConnectors | 컨텍스트 항목 또는 서비스를 대기하는 중이므로 아직 활성화되지 않은 모든 커넥터의 열거형을 가져옵니다. |
![]() |
RunningConnectors | 현재 실행 중인 모든 커넥터의 열거형을 가져옵니다. |
위쪽
메서드
이름 | 설명 | |
---|---|---|
![]() |
CreateFeatureProviders(Type) | 지정된 형식의 기능 공급자 집합을 만들어 반환합니다. |
![]() |
CreateFeatureProviders(Type, Predicate<Type>) | 지정된 형식의 기능 공급자 집합을 만들어 반환합니다. |
![]() |
CreateFeatureProviders(Type, Type) | 지정된 형식에 해당하는 기능 공급자 집합을 만들어 반환합니다. |
![]() |
CreateFeatureProviders(Type, Type, Predicate<Type>) | 지정된 형식에 해당하는 기능 공급자 집합을 만들어 반환합니다. |
![]() |
Dispose() | FeatureManager 에서 사용하는 모든 리소스를 해제합니다. |
![]() |
Dispose(Boolean) | 실행 중인 모든 기능 커넥터를 삭제합니다. |
![]() |
Equals | 지정한 Object가 현재 Object와 같은지 여부를 확인합니다. (Object에서 상속됨) |
![]() |
Finalize | Dispose 를 호출하는 종료자입니다. (Object.Finalize()을(를) 재정의함) |
![]() |
GetCustomAttributes | 지정된 형식의 특성을 열거합니다. |
![]() |
GetHashCode | 특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨) |
![]() |
GetType | 현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨) |
![]() |
InitializeFeatures | 지정된 형식에 정의된 기능 공급자의 기능 커넥터를 모두 초기화합니다. |
![]() |
MemberwiseClone | 현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨) |
![]() |
OnFeatureAvailable | FeatureAvailable 이벤트를 발생시킵니다. |
![]() |
ToString | 현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨) |
위쪽
이벤트
이름 | 설명 | |
---|---|---|
![]() |
FeatureAvailable | 새 기능 형식을 사용할 수 있을 때 발생합니다. |
위쪽
확장 메서드
이름 | 설명 | |
---|---|---|
![]() |
CreateFeatureProviders(Type, ModelItem) | 오버로드되었습니다. 지정된 형식 및 모델 항목의 기능 공급자를 만듭니다. (FeatureExtensions에서 정의됨) |
![]() |
CreateFeatureProviders(Type, ModelItem, Predicate<Type>) | 오버로드되었습니다. 지정된 형식 및 모델 항목의 기능 공급자를 만듭니다. (FeatureExtensions에서 정의됨) |
위쪽
설명
FeatureManager 클래스를 사용하여 기능 공급자를 만들고 실행 중이거나 보류 중인 기능 커넥터를 쿼리할 수 있습니다.
기능 커넥터를 인스턴스화해야 하지만 아직 존재하지 않는 서비스나 컨텍스트 항목에 등록해야 하는 경우 커넥터 형식이 보류 목록에 포함되고 편집 컨텍스트에 등록이 추가됩니다. 해당 서비스 및 항목을 사용할 수 있게 되면 기능 커넥터가 인스턴스화됩니다.
개체가 편집 모델에 추가되면 편집 도구에서 기능 관리자에 대해 InitializeFeatures 메서드를 호출하여 개체의 기능 특성을 검사해야 합니다. 기능 관리자는 이러한 특성을 FeatureConnector<TFeatureProviderType> 특성과 일치시키고 모든 고유 커넥터가 인스턴스화되었는지 확인합니다.
예제
다음 샘플 코드에서는 FeatureManager 클래스를 사용하여 실행 중인 커넥터와 보류 중인 커넥터에 액세스하는 방법을 보여 줍니다. 전체 코드는 방법: 사용자 지정 기능 커넥터 만들기를 참조하십시오.
Public Sub Initialize(ByVal manager As FeatureManager)
featManager = manager
Bind()
End Sub
...
' Binds the activatedFeatures and pendingFeatures controls
' the FeatureManager's RunningConnectors and PendingConnectors\
' properties.
Private Sub Bind()
activatedFeatures.Items.Clear()
pendingFeatures.Items.Clear()
Dim info As FeatureConnectorInformation
For Each info In featManager.RunningConnectors
activatedFeatures.Items.Add(info)
Next info
For Each info In featManager.PendingConnectors
pendingFeatures.Items.Add(info)
Next info
End Sub
public void Initialize(FeatureManager manager)
{
featManager = manager;
Bind();
}
...
// Binds the activatedFeatures and pendingFeatures controls
// the FeatureManager's RunningConnectors and PendingConnectors\
// properties.
private void Bind()
{
activatedFeatures.Items.Clear();
pendingFeatures.Items.Clear();
foreach (FeatureConnectorInformation info in
featManager.RunningConnectors)
{
activatedFeatures.Items.Add(info);
}
foreach (FeatureConnectorInformation info in
featManager.PendingConnectors)
{
pendingFeatures.Items.Add(info);
}
}
스레드로부터의 안전성
이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.
참고 항목
참조
Microsoft.Windows.Design.Features 네임스페이스
FeatureConnector<TFeatureProviderType>