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

# Class Item

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

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

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

```csharp title="Syntax"
public abstract class Item : BaseItem, ICloneable
```

## Implements

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

## Inherited Members

* [Aurigma.DesignAtoms.Model.Items.BaseItem.Accept(Aurigma.DesignAtoms.Model.ItemVisitor)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#accept)
* `Aurigma.DesignAtoms.Model.Items.BaseItem.Accept``1(Aurigma.DesignAtoms.Model.ItemVisitor<<T>>)`
* [Aurigma.DesignAtoms.Model.Items.BaseItem.Equals(Aurigma.DesignAtoms.Model.Items.BaseItem)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#equals)
* [Aurigma.DesignAtoms.Model.Items.BaseItem.ShallowClone()](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#shallowclone)
* `Aurigma.DesignAtoms.Model.Items.BaseItem.ShallowClone``1(<TItem>)`
* [Aurigma.DesignAtoms.Model.Items.BaseItem.ParentContainer](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#parentcontainer)
* [Aurigma.DesignAtoms.Model.Items.BaseItem.Type](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#type)
* [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

### Item

```csharp
public Item()
```

## Properties

### Locked

```csharp
public virtual bool Locked { get; set; }
```

### Class

```csharp
public string Class { get; set; }
```

### IsVariable

```csharp
public bool IsVariable { get; set; }
```

### ThemeBinding

```csharp
public ThemeBinding ThemeBinding { get; set; }
```

### Opacity

```csharp
public float Opacity { get; set; }
```

### Mask

```csharp
public ItemMask Mask { get; set; }
```

### Visible

```csharp
public bool Visible { get; set; }
```

### FrontendPermissions

```csharp
public FrontendPermissions FrontendPermissions { get; set; }
```

### ManipulationPermissions

```csharp
public ManipulationPermissions ManipulationPermissions { get; set; }
```

### VisualizationPermissions

```csharp
public VisualizationPermissions VisualizationPermissions { get; set; }
```

### ItemPermissions

```csharp
public ItemPermissions ItemPermissions { get; set; }
```

### ViolationSettings

```csharp
public ViolationSettings ViolationSettings { get; set; }
```

### Transform

```csharp
public Transform Transform { get; set; }
```

### BlendMode

```csharp
public BlendMode BlendMode { get; set; }
```

### TextWrappingMode

```csharp
public TextWrappingMode TextWrappingMode { get; set; }
```

### RenderingType

```csharp
public RenderingType RenderingType { get; }
```

### IsRenderTypeIsNormal

```csharp
public bool IsRenderTypeIsNormal { get; }
```

## Methods

### CanSetIsVariable

```csharp
protected virtual bool CanSetIsVariable()
```

##### Returns

`System.Boolean`

### SetViolationSettings

```csharp
protected virtual void SetViolationSettings(ViolationSettings value)
```

##### Parameters

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

### OnPermissionsChanged

```csharp
protected void OnPermissionsChanged(object sender = null, EventArgs e = null)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Object` | *sender* |  |
| `System.EventArgs` | *e* |  |

### SubscribeToPermissionChanged

```csharp
protected virtual void SubscribeToPermissionChanged()
```

### UnsubscribeFromPermissionChanged

```csharp
protected virtual void UnsubscribeFromPermissionChanged()
```

### RaiseTransformChanged

```csharp
public void RaiseTransformChanged()
```

### Transform_TransformChanged

```csharp
protected virtual void Transform_TransformChanged(object sender, EventArgs e)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Object` | *sender* |  |
| `System.EventArgs` | *e* |  |

### SetColorProfile

```csharp
public virtual void SetColorProfile(string colorProfile, ColorSpace colorSpace)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *colorProfile* |  |
| [Aurigma.DesignAtoms.Model.Color.ColorSpace](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Color/ColorSpace.md) | *colorSpace* |  |

### Equals

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

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Items.Item](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/Item.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.Items.BaseItem.Equals(System.Object)](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Items/BaseItem.md#equals)

### GetThemeBinding

```csharp
protected ThemeBinding GetThemeBinding(ThemeBinding themeBinding)
```

##### Parameters

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

##### Returns

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

### ApplyPermissionsConstrain

```csharp
public virtual void ApplyPermissionsConstrain()
```

### 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.Items.BaseItem.DeepClone``1(<TItem>,System.Boolean)`

### OnParentContainerChanged

```csharp
protected override void OnParentContainerChanged()
```

##### Overrides

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

### GetAllColors

```csharp
public abstract IEnumerable<Color> GetAllColors()
```

##### Returns

`System.Collections.Generic.IEnumerable<Aurigma.DesignAtoms.Model.Color.Color>`

## Fields

### ParentGroupItem

```csharp
public GroupItem ParentGroupItem
```

### _ignorePermissionsChange

```csharp
protected bool _ignorePermissionsChange
```

### ContainerName

```csharp
public string ContainerName
```

### FromLayout

```csharp
public bool FromLayout
```

### _violationSettings

```csharp
protected ViolationSettings _violationSettings
```

## Events

### TransformChanged

```csharp
public event EventHandler<EventArgs> TransformChanged
```

### PermissionsChanged

```csharp
public event EventHandler<EventArgs> PermissionsChanged
```
