次の方法で共有


_XDocument3.DataObjects プロパティ

Microsoft Office InfoPath 2007 フォームに関連付けられている DataObjectsCollection コレクションへの参照を取得します。

このプロパティは、CLS に準拠していません。  

名前空間: Microsoft.Office.Interop.InfoPath.SemiTrust
アセンブリ: Microsoft.Office.Interop.InfoPath.SemiTrust (microsoft.office.interop.infopath.semitrust.dll 内)

構文

'宣言
<DispIdAttribute(18)> _
ReadOnly Property DataObjects As DataObjectsCollection
'使用
Dim instance As _XDocument3
Dim value As DataObjectsCollection

value = instance.DataObjects
[DispIdAttribute(18)] 
DataObjectsCollection DataObjects { get; }

コメント

DataObjects コレクションを使用すると、フォームのいくつものセカンダリ データ ソースへのアクセスをプログラムで行うことができます。各セカンダリ データ ソースは、DataObjects コレクションの DataSourceObject オブジェクトに含まれています。

メモ重要 :

このメンバは、現在開いているフォームと同じドメイン内で実行されているフォーム、またはドメインを越えたアクセス許可を付与されているフォームだけがアクセスできます。

次の例では、XDocument オブジェクトの DataObjects プロパティを使用して、"CityList" セカンダリ データ ソースへの参照を設定しています。

DataSourceObject myDataObject = 
   (DataSourceObject)thisXDocument.DataObjects["CityList"];
Dim myDataObject As DataSourceObject = _
   DirectCast(thisXDocument.DataObjects["CityList"], DataSourceObject)

次の例はフォームのボタンの OnClick イベント ハンドラとして実装したものであり、DataObjects オブジェクトの XDocument プロパティを使用して、DataObjectsCollection コレクションへの参照を設定しています。次に、コレクションをループし、格納されている各 DataSourceObject オブジェクトの位置インデックスおよび名前を表示しています。

[InfoPathEventHandler(MatchPath="ShowDataObjectNames", EventType=InfoPathEventType.OnClick)]
public void ShowDataObjectNames_OnClick(DocActionEvent e)
{
   // Set a reference to the DataObjects collection.
   DataObjectsCollection dataObjects = thisXDocument.DataObjects;

   // Loop through the collection and display the name
   // of each DataObject object that it contains.
   for (int i=0; i < dataObjects.Count; i++)
   {
       thisXDocument.UI.Alert("Data object " + i + ": " + 
          dataObjects[i].Name);
   }
}

関連項目

参照

_XDocument3 インターフェイス
_XDocument3 のメンバ
Microsoft.Office.Interop.InfoPath.SemiTrust 名前空間