    

 ## On this page

  

 

 # Interface IScenario

 Last update: 16.07.2025 

Namespace: [VM.Models](VM.Models.md)  
Assembly: VM.Models.Project.dll

```csharp
public interface IScenario : IProjectObject, IHasID, IHasName, IDisposableObject, ISelected, IHasParent<IProjectDocument>

```

#### Implements

[IProjectObject](VM.Models.IProjectObject.md), IHasID, IHasName, IDisposableObject, ISelected, IHasParent&lt;IProjectDocument&gt;

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Properties

### CategoryName

```csharp
string CategoryName { get; }

```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### Items

```csharp
IEnumerable<IStep> Items { get; }

```

#### Property Value

[IEnumerable](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1)&lt;[IStep](VM.Models.IStep.md)&gt;

### Left

```csharp
double Left { get; set; }

```

#### Property Value

[double](https://learn.microsoft.com/dotnet/api/system.double)

### Top

```csharp
double Top { get; set; }

```

#### Property Value

[double](https://learn.microsoft.com/dotnet/api/system.double)

### this\[Identifier\]

```csharp
IStep this[Identifier identifier] { get; }

```

#### Property Value

[IStep](VM.Models.IStep.md)

### this\[int\]

```csharp
IStep this[int index] { get; }

```

#### Property Value

[IStep](VM.Models.IStep.md)

## Methods

### Add(IStep)

```csharp
void Add(IStep item)

```

#### Parameters

`item` [IStep](VM.Models.IStep.md)

### Clear()

```csharp
void Clear()

```

### Remove(IStep)

```csharp
void Remove(IStep item)

```

#### Parameters

`item` [IStep](VM.Models.IStep.md)

### TryGetItem(Identifier, out IStep)

```csharp
bool TryGetItem(Identifier identifier, out IStep item)

```

#### Parameters

`identifier` Identifier

`item` [IStep](VM.Models.IStep.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)