IXpsOMDictionary::SetAt メソッド (xpsobjectmodel.h)

ディクショナリ内の指定した場所にあるエントリを置き換えます。

構文

HRESULT SetAt(
  [in] UINT32          index,
  [in] LPCWSTR         key,
  [in] IXpsOMShareable *entry
);

パラメーター

[in] index

エントリを置き換えるディクショナリ内の 0 から始まるインデックス。

[in] key

新しいエントリに使用するキー。

キーによって参照される文字列は、ディクショナリ内で一意である必要があります。

[in] entry

index で指定された場所にある現在のコンテンツを置き換える IXpsOMShareable インターフェイス ポインター。

ディクショナリに重複するインターフェイス ポインターを含めることはできません。 このパラメーターには、ディクショナリにまだ存在しないインターフェイス ポインターが含まれている必要があります。

戻り値

このメソッドは HRESULT を返します。 使用可能な値には、次の表に含まれる値が含まれますが、これらに限定されません。 この表に記載されていない XPS ドキュメント API の戻り値については、「 XPS ドキュメント エラー」を参照してください。

リターン コード 説明
S_OK
メソッドが成功しました。
XPS_E_NO_CUSTOM_OBJECTS
エントリ は、認識されたインターフェイスの実装を指していません。 XPS ドキュメント API インターフェイスのカスタム実装はサポートされていません。

注釈

index で指定された場所で、このメソッドは既存のポインターによって参照される IXpsOMShareable インターフェイスを解放し、エントリで渡されるインターフェイス ポインターに置き換え、キーで渡されたキーを割り当てます。

ディクショナリに格納されているインターフェイス ポインターは、通常、IXpsOMBrush や IXpsOMVisual などの IXpsOMShareable インターフェイスから派生したインターフェイスを指します。 インターフェイスの種類を確認するには、 GetType メソッドを呼び出します。

次の図は、 SetAt メソッドによってディクショナリがどのように変更されるかを示しています。

RemoveAt がディクショナリからエントリを削除する方法を示す図

要件

   
サポートされている最小のクライアント Windows 7、Windows Vista SP2 と Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー xpsobjectmodel.h

こちらもご覧ください

IXpsOMDictionary

IXpsOMShareable

XML Paper Specification

XPS ドキュメント エラー