This topic has not yet been rated - Rate this topic

DomainModel.CreateElement Method

Creates an element of a specified type.

Namespace:  Microsoft.VisualStudio.Modeling
Assembly:  Microsoft.VisualStudio.Modeling.Sdk (in Microsoft.VisualStudio.Modeling.Sdk.dll)
public virtual ModelElement CreateElement(
	Partition partition,
	Type elementType,
	PropertyAssignment[] propertyAssignments
)

Parameters

partition
Type: Microsoft.VisualStudio.Modeling.Partition

The partition where element is to be created.

elementType
Type: System.Type

A non-abstract domain class defined in the DSL Definition.

propertyAssignments
Type: Microsoft.VisualStudio.Modeling.PropertyAssignment[]

Specify values for the domain properties defined for the domain class.

Return Value

Type: Microsoft.VisualStudio.Modeling.ModelElement
The ModelElement that was created.

This method is suitable for generated code. In ordinary programming, use the constructor of the domain class.

This example assumes the DSL Definition of the Minimal Language DSL solution template.

MyDslDomainModel dm = ...;
PropertyAssignment nameProperty = 
    new PropertyAssignment(ExampleElement.NameDomainPropertyId, "element1");
ExampleElement element = dm.CreateElement(
    dm.Store.DefaultPartition, 
    typeof(ExampleElement), 
    new PropertyAssignment[] {nameProperty}
   ) as ExampleElement;

The following example has the same effect:

ExampleElement element1 = new ExampleElement(dm.Store);
element1.Name = "element1";
Did you find this helpful?
(1500 characters remaining)

Community Additions

ADD
© 2013 Microsoft. All rights reserved.