_XDocument4.DataObjects property
Gets a reference to the DataObjectsCollection collection that is associated with a Microsoft InfoPath form.
Namespace: Microsoft.Office.Interop.InfoPath
Assembly: Microsoft.Office.Interop.InfoPath (in Microsoft.Office.Interop.InfoPath.dll)
Syntax
'Declaration
ReadOnly Property DataObjects As DataObjectsCollection
Get
'Usage
Dim instance As _XDocument4
Dim value As DataObjectsCollection
value = instance.DataObjects
DataObjectsCollection DataObjects { get; }
Property value
Type: Microsoft.Office.Interop.InfoPath.DataObjectsCollection
Returns DataObjectsCollection.
Implements
Remarks
The DataObjects collection provides programmatic access to a form's secondary data sources. Each secondary data source is contained in a DataSourceObject object within the DataObjects collection.
Examples
In the following example, the DataObjects property of the XDocument object is used to set a reference to the "CityList" secondary data source:
DataSourceObject myDataObject =
(DataSourceObject)thisXDocument.DataObjects["CityList"];
Dim myDataObject As DataSourceObject = _
DirectCast(thisXDocument.DataObjects["CityList"], DataSourceObject)
In the following example, implemented as an OnClick event handler for a button on a form, the DataObjects property of the XDocument object is used to set a reference to the DataObjectsCollection collection. The code then loops through the collection and displays the positional index and name of each DataSourceObject object that it contains:
[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);
}
}