XmlFormCollection.NewFromFormTemplate Method (String, String, XmlFormOpenMode)
Creates a new form by using the specified form template with data specified by an XPathNavigator object and opened in the specified XmlFormOpenMode.
Namespace: Microsoft.Office.InfoPath
Assembly: Microsoft.Office.InfoPath (in Microsoft.Office.InfoPath.dll)
Syntax
'Declaration
Public MustOverride Function NewFromFormTemplate ( _
formTemplateLocation As String, _
xmlData As String, _
behavior As XmlFormOpenMode _
) As XmlForm
'Usage
Dim instance As XmlFormCollection
Dim formTemplateLocation As String
Dim xmlData As String
Dim behavior As XmlFormOpenMode
Dim returnValue As XmlForm
returnValue = instance.NewFromFormTemplate(formTemplateLocation, _
xmlData, behavior)
public abstract XmlForm NewFromFormTemplate(
string formTemplateLocation,
string xmlData,
XmlFormOpenMode behavior
)
Parameters
formTemplateLocation
Type: System.StringThe Uniform Resource Identifier (URI) of the form template on which to base the new form.
xmlData
Type: System.StringThe Uniform Resource Identifier (URI) of the XML document that provides the XML data to be used as a template for the form.
behavior
Type: Microsoft.Office.InfoPath.XmlFormOpenModeAn XmlFormOpenMode enumeration that specifies how the form will be opened.
Return Value
Type: Microsoft.Office.InfoPath.XmlForm
An XmlForm object that represents the new form that was created.
Exceptions
Exception | Condition |
---|---|
ArgumentException | The parameter that was passed to this method is not valid. For example, it is of the wrong type or format. |
ArgumentNullException | The parameter that was passed to this method is a null reference (Nothing in Visual Basic). |
FileNotFoundException | The file specified for formTemplateLocation does not exist. |
InvalidOperationException | This method was called from an event handler for the Loading event. |
Remarks
The NewFromFormTemplate method can only be used to create a new form that is based on an existing form template; it cannot be used to create a new form that is based on a form. To create a form from an existing form, use the New method.
When you use the NewFromFormTemplate method, the new form opens in InfoPath and is ready to be filled out.
This member can be accessed only by forms running in the same domain as the currently open form, or by forms that have been granted cross-domain permissions.
This type or member can be accessed only from code running in forms opened in Microsoft InfoPath Filler.
Examples
In the following code example, the NewFromFormTemplate(formTemplateLocation, xmlData,behavior) method of the XmlFormCollection class is passed the URI of an existing form template, the URI of XML data, an XmlFormOpenMode enumeration, and the new form's associated XmlForm object is returned.
XmlForm newDocument =
this.Application.XmlForms.NewFromFormTemplate(
@"C:\MyForm.xsn", @"C:\MyForm.xml",
XmlFormOpenMode.FailOnVersionOlder);
Dim newDocument As XmlForm = _
Me.Application.XmlForms.NewFromFormTemplate(_
"C:\MyForm.xsn", XmlFormOpenMode.FailOnVersionOlder)