# CMxStringArray Class

Namespace: `ArchestrA.Toolkit`

CMxStringArray is derived from CMxArray and provides support for string Array Attributes.

**Syntax**

```csharp
public class CMxStringArray : CMxArray<string>
```

## CMxStringArray Properties

### Value Property

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

**Syntax**

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

**Returns**

string[ ]

### Property to Get and Get the String using the [ ] Operator

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

**Syntax**

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

**Returns**

string

## CMxStringArray Constructors

### CMxStringArray Constructor int

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

**Syntax**

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

**Parameters**

**`length`**

[in] integer value that holds the array length.

### CMxStringArray Constructor string[ ]

Provides a constructor to initialize the class with a string array default value.

**Syntax**

```csharp
public CMxStringArray(string[] value);
```

**Parameters**

**`value`**

[in] string[ ] value

### CMxStringArray Constructor SupportWrapper, string

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

**Syntax**

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

**Parameters**

**`_wrapper`**

[in] SupportWrapper.

**`_attributeRef`**

[in] string value that holds the attribute reference.

## CMxStringArray Method

### Set Method

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

**Syntax**

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

**Parameters**

**`newValue`**

[in] CMxStringArray value to be set.

## CMxStringArray Operator Overloads

### CMxStringArray Operator Overload string[ ]

Provides an operator that converts from string array to CMxStringArray.

**Syntax**

```csharp
public static implicit operator CMxStringArray (string[] val);
```

**Parameters**

**`val`**

[in] string[ ] to convert to CMxStringArray.

**Returns**

CMxStringArray

### CMxStringArray Operator Overload CMxValue

Provides an operator that converts from CMxValue to CMxStringArray.

**Syntax**

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

**Parameters**

**`val`**

[in] CMxValue value to convert to CMxStringArray.

**Returns**

CMxStringArray

### string[ ] Operator Overload CMxStringArray

Provides an operator that converts from CMxStringArray to string array.

**Syntax**

```csharp
public static implicit operator string[](CMxStringArray val);
```

**Parameters**

**`val`**

[in] CMxStringArray value to convert to string array.

**Returns**

string[ ]

### CMxValue Operator Overload CMxStringArray

Provides an operator that converts from CMxStringArray to CMxValue.

**Syntax**

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

**Parameters**

**`val`**

[in] CMxStringArray value to convert to CMxValue.

**Returns**

CMxValue
