---
title: "Class SurfaceMockup | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/SurfaceMockup/"
---

# Class SurfaceMockup

> **Inheritance:** `System.Object` -> [Aurigma.DesignAtoms.Model.ModelComponent](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md) -> SurfaceMockup

###### **Namespace**: [Aurigma.DesignAtoms.Model](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.md)

###### **Assembly**: Aurigma.DesignAtoms.Model.dll

```csharp title="Syntax"
public class SurfaceMockup : ModelComponent, ICloneable
```

## Implements

* `System.ComponentModel.INotifyPropertyChanged`
* `System.ICloneable`

## Inherited Members

* [Aurigma.DesignAtoms.Model.ModelComponent.UserTagKey](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#usertagkey)
* [Aurigma.DesignAtoms.Model.ModelComponent.WarningTagKey](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#warningtagkey)
* [Aurigma.DesignAtoms.Model.ModelComponent.Tags](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#tags)
* [Aurigma.DesignAtoms.Model.ModelComponent.GenerateId()](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#generateid)
* [Aurigma.DesignAtoms.Model.ModelComponent.ToString()](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#tostring)
* [Aurigma.DesignAtoms.Model.ModelComponent.Equals(Aurigma.DesignAtoms.Model.ModelComponent)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#equals)
* [Aurigma.DesignAtoms.Model.ModelComponent.GetHashCode()](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#gethashcode)
* [Aurigma.DesignAtoms.Model.ModelComponent.Clone(System.Boolean)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#clone)
* [Aurigma.DesignAtoms.Model.ModelComponent.Clone()](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#clone)
* [Aurigma.DesignAtoms.Model.ModelComponent.OnPropertyChanged(System.String)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#onpropertychanged)
* [Aurigma.DesignAtoms.Model.ModelComponent.Version](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#version)
* [Aurigma.DesignAtoms.Model.ModelComponent.Id](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#id)
* [Aurigma.DesignAtoms.Model.ModelComponent.Name](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#name)
* [Aurigma.DesignAtoms.Model.ModelComponent.PropertyChanged](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#propertychanged)
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### SurfaceMockup

```csharp
public SurfaceMockup(Collection<MockupContainer> underContainers = null, Collection<MockupContainer> overContainers = null)
```

## Properties

### UnderContainers

```csharp
public Collection<MockupContainer> UnderContainers { get; protected set; }
```

### OverContainers

```csharp
public Collection<MockupContainer> OverContainers { get; protected set; }
```

## Methods

### DeepClone&lt;TItem&gt;

```csharp
public override TItem DeepClone<TItem>(TItem clone = null, bool keepIds = false)
    where TItem : ModelComponent
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `<TItem>` | *clone* |  |
| `System.Boolean` | *keepIds* |  |

##### Returns

`<TItem>`

##### Overrides

* `Aurigma.DesignAtoms.Model.ModelComponent.DeepClone``1(<TItem>,System.Boolean)`

### Equals

```csharp
protected bool Equals(SurfaceMockup other)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.SurfaceMockup](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/SurfaceMockup.md) | *other* |  |

##### Returns

`System.Boolean`

### Equals

```csharp
public override bool Equals(object obj)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Object` | *obj* |  |

##### Returns

`System.Boolean`

##### Overrides

* [Aurigma.DesignAtoms.Model.ModelComponent.Equals(System.Object)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/ModelComponent.md#equals)

## Fields

### ParentSurface

```csharp
public Surface ParentSurface
```
