# Add(VisualElement)

> Adds an element to the contentContainer of this element.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.UIElements](/engine/6000.7/script-reference/unityengine/uielements.md)
* **Assembly:** UnityEngine.UIElementsModule

```csharp
public void Add(VisualElement child)
```

### Parameters

**** (\[VisualElement]\(/engine/6000.7/script-reference/unityengine/uielements/visualelement)): The child element to add to the content container.

### Remarks

Adds the child element to the [hierarchy](/engine/6000.7/script-reference/unityengine/uielements/visualelement/hierarchy-1.md) if this element is the content container; otherwise, adds the child element to the content container of this element.

Exits without performing any action if the child element is `null`.

Throws an InvalidOperationException if the contentContainer is `null`.

The following example shows how to add a [Button](/engine/6000.7/script-reference/unityengine/uielements/button.md) to a visual element.

### Examples

```csharp
using UnityEngine;
using UnityEngine.UIElements;

[UxmlElement]
public partial class MyElement : VisualElement
{
    public MyElement()
    {
        var button = new Button { name = "my-button", text = "Click me!" };
        button.clicked += ButtonClicked;

        // Add the button to the visual element
        Add(button);
    }

    void ButtonClicked()
    {
        Debug.Log("Button clicked!");
    }
}
```
