DisplayManager クラス

定義

DisplayTarget オブジェクトまたはオブジェクトの所有権を管理し、DisplayState オブジェクトを作成するメソッドを提供します。

public ref class DisplayManager sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 458752)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DisplayManager final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 458752)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DisplayManager : System.IDisposable
Public NotInheritable Class DisplayManager
Implements IDisposable
継承
Object Platform::Object IInspectable DisplayManager
属性
実装

Windows の要件

デバイス ファミリ
Windows 10, version 1809 (10.0.17763.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v7.0 で導入)

注釈

このオブジェクトは IClosable/IDisposable を実装します。これは、使用されなくなったすべての DisplayTarget オブジェクトの所有権を取り消すために使用する必要があります。

メソッド

Close()

この DisplayManager インスタンスが所有するすべての DisplayTarget オブジェクトの所有権を取り消します。

Create(DisplayManagerOptions)

指定したオプションを使用して DisplayManager インスタンスを作成します。

CreateDisplayDevice(DisplayAdapter)

指定したアダプターの DisplayDevice オブジェクトを作成します。 DisplayDevice を使用すると、指定されたアダプター上のターゲットに対して全画面表示コンテンツを作成して表示できます。

CreateDisplayDeviceForIndirectAdapter(DisplayAdapter, DisplayAdapter)

DisplayTarget オブジェクトまたはオブジェクトの所有権を管理し、DisplayState オブジェクトを作成するメソッドを提供します。

Dispose()

アンマネージ リソースの解放またはリセットに関連付けられているアプリケーション定義のタスクを実行します。

GetCurrentAdapters()

システムに現在存在するディスプレイ アダプターのセットを列挙します。

GetCurrentTargets()

システムに現在存在する一連の表示ターゲットを列挙します。

ReleaseTarget(DisplayTarget)

指定した表示ターゲットの所有権を解放し、システム上の他のコンポーネントが所有権を取得できるようにします。

Start()

すべての DisplayManager イベントのアトミックなリッスンを開始します。 DisplayManager イベントは、 Start を呼び出すまで発生しません。

Stop()

すべての DisplayManager イベントのリッスンをアトミックに停止し、同期的に 無効 にトリガーします。

TryAcquireTarget(DisplayTarget)

DisplayTarget の排他的所有権の取得を試みます。

TryAcquireTargetsAndCreateEmptyState(IIterable<DisplayTarget>)

DisplayTarget オブジェクトのコレクションの排他的所有権の取得を試み、これらのターゲットへのパスの接続をサポートする空の変更可能な DisplayState オブジェクトを作成します。

TryAcquireTargetsAndCreateSubstate(DisplayState, IIterable<DisplayTarget>)

DisplayTarget オブジェクトのコレクションの排他的所有権の取得を試み、このメソッドに渡されたターゲットに対してのみ、指定された DisplayState のサブセットを切り取ります。 結果の状態は変更して適用できます。

TryAcquireTargetsAndReadCurrentState(IIterable<DisplayTarget>)

DisplayTarget オブジェクトのコレクションの排他的所有権の取得を試み、指定されたターゲットの現在の状態が設定された変更可能な DisplayState を作成します。

TryReadCurrentStateForAllTargets()

すべてのターゲットのシステム表示状態全体が設定された読み取り専用 の DisplayState オブジェクトを作成します。

TryReadCurrentStateForModeQuery()

DisplayTarget オブジェクトまたはオブジェクトの所有権を管理し、DisplayState オブジェクトを作成するメソッドを提供します。

イベント

Changed

システム表示ハードウェアが追加、削除、または変更されたときに発生するイベント。 これは、 DisplayAdapter または DisplayTarget コレクションが変更されるたびに発生する可能性があります。 これらの変更を検出し、 GetCurrentAdaptersGetCurrentTargets を呼び出して更新されたコレクションを取得するには、このイベントを使用します。

Disabled

現在のセッションの表示スタックが無効になっているとき、および DisplayManager.Stop が呼び出されるたびに発生するイベント。 ターミナル サービス セッションの切り替えやドライバーエラーからの回復など、いくつかのケースでセッション表示スタックを無効にすることができます。 Disabled が呼び出されたときにサブスクライバーがクリーンを試行することをお勧めします。 セッション表示スタックが無効になっている間、ほとんどの表示 API は失敗します。

Enabled

現在のセッションの表示スタックが有効になっているとき、および DisplayManager.Start が呼び出されるたびに発生するイベント。 ターミナル サービス セッションの切り替えやドライバーエラーからの回復など、いくつかのケースでセッション表示スタックを再度有効にすることができます。 このイベントが発生する前にシステム表示スタックが任意の状態のままになる可能性があるため、サブスクライバーはこの呼び出しですべてのターゲットと状態を再列挙することをお勧めします。

PathsFailedOrInvalidated

表示パスがシステムによって非同期的に失敗または無効化されるたびに発生するイベント。 これは、ハードウェア帯域幅の要件の変更、またはドライバーの障害が原因である可能性があります。

このイベントのサブスクライバーは、所有するターゲットに対して TryAcquireTargetsAndReadCurrentState を呼び出し、結果として得られる DisplayState オブジェクトのパスに Status プロパティが FailedAsync または InvalidatedAsync に設定されているかどうかをチェックし、推奨されるアクションを実行する必要があります。

適用対象