# CMxDataTypeArray Class

Namespace: `ArchestrA.Toolkit`

CMxDataTypeArray is derived from CMxArray and provides support for MxDataType Array Attributes.

**Syntax**

```csharp
public class CMxDataTypeArray : CMxArray<MxDataType>
```

## CMxDataTypeArray Properties

### Value Property

Provides a property to get and set the value as a MxDataType array.

**Syntax**

```csharp
public MxDataType[] Value { get; set; }
```

**Returns**

MxDataType[ ]

### Property to Get and Set the MxDatatype using the [ ] Operator

Provides a property to get and set the MxDataType value of an element using [ ] operator.

**Syntax**

```csharp
public MxDataType this[short i] { get; set; }
```

**Returns**

MxDataType

## CMxDataTypeArray Constructors

### CMxDataTypeArray Constructor (int)

Provides a constructor to initialize the array to a default length.

**Syntax**

```csharp
public CMxDataTypeArray(int length);
```

**Parameters**

**`length`**

[in] int value that holds the length of the array.

### CMxDataTypeArray Constructor (MxDataType[ ])

Provides a constructor to initialize the class with a MxDataType array.

**Syntax**

```csharp
public CMxDataTypeArray (MxDataType[] value);
```

**Parameters**

**`value`**

[in] MxDataType[ ] value to be set.

### CMxDataTypeArray Constructor (SupportWrapper, string)

Provides a constructor to initialize the class for use in a primitive wrapper.

**Syntax**

```csharp
public CMxDataTypeArray (SupportWrapper _wrapper, string _attributeRef);
```

**Parameters**

**`_wrapper`**

[in] SupportWrapper.

**`_attributeRef`**

[in] string value that holds the attribute reference.

## CMxDataTypeArray Method

### Set Method

Provides a method to set the value of the Attribute from a CMxDataTypeArray.

**Syntax**

```csharp
public void Set(CMxDataTypeArray newValue);
```

**Parameters**

**`newValue`**

[in] CMxDataTypeArray value to be set

## CMxDataTypeArray Operator Overloads

### CMxDataTypeArray Operator Overload (MxDataType[ ])

Provides a operator to convert a MxDataType array into a CMxDataTypeArray.

**Syntax**

```csharp
public static implicit operator CMxDataTypeArray(MxDataType[] val);
```

**Parameters**

**`val`**

[in] MxDataType[ ] value to convert to CMxDataTypeArray.

**Returns**

CMxDataTypeArray

### CMxValue Operator Overload

Provides an operator to convert a CMxDataTypeArray into a CMxValue.

**Syntax**

```csharp
public static implicit operator CMxValue(CMxDataTypeArray val);
```

**Parameters**

**`val`**

[in] CMxDataTypeArray value to convert to CMxValue.

**Returns**

CMxValue

### MxDataType Operator Overload

Provides an operator to convert a CMxDataTypeArray into a MxDataType array.

**Syntax**

```csharp
public static implicit operator MxDataType[](CMxDataTypeArray val);
```

**Parameters**

**`val`**

[in] CMxDataTypeArray value to convert to MxDataType[ ].

**Returns**

MxDataType[ ]

### CMxDataTypeArray Operator Overload (CMxValue)

Provides an operator to convert a CMxValue into a CMxDataTypeArray.

**Syntax**

```csharp
public static implicit operator CMxDataTypeArray (CMxValue val);
```

**Parameters**

**`val`**

CMxDataTypeArray

**Returns**

[in] CMxValue value to convert to DataTypeArray.
