---
id: "E:cAlgo.API.Frame.ContainerChanged"
kind: "event"
type: "T:cAlgo.API.Frame"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Chart/Frame/ContainerChanged/"
---

> Documentation index for agents: https://help.ctrader.com/ctrader-algo/llms.txt · machine index: https://help.ctrader.com/ctrader-algo/api.json

# Frame.ContainerChanged

Member of [Frame](https://help.ctrader.com/ctrader-algo/references/Plugin/Chart/Frame/index.md).

## ContainerChanged

Occurs when frame container is changed.

Environments: Desktop supported · CLI not supported · Cloud not supported.

- CLI: Available to plugins only, and plugins cannot run in the CLI.
- Cloud: Available to plugins only, and plugins cannot run in the cloud.

C#:

```csharp
event Action<FrameContainerChangedEventArgs> ContainerChanged;
```

Python:

```python
frame.ContainerChanged += handler  # handler(obj: FrameContainerChangedEventArgs)
```

### Returns

`Action<FrameContainerChangedEventArgs>` — 

### Examples

C#:

```csharp
protected override void OnStart()
{
    var chartFrame = ChartManager.AddChartFrame("EURUSD", TimeFrame.Hour);
    chartFrame.ContainerChanged += OnFrameContainerChanged;
}

private void OnFrameContainerChanged(FrameContainerChangedEventArgs args)
{
    Print("Frame {0} moved to container {1}", args.Frame.Id, args.Frame.ChartContainer.Id);
}
```

Python:

```python
def on_start(self):
    chartFrame = api.ChartManager.AddChartFrame("EURUSD", TimeFrame.Hour)
    chartFrame.ContainerChanged += self.on_frame_container_changed

def on_frame_container_changed(self, args):
    api.Print(f"Frame {args.Frame.Id} moved to container {args.Frame.ChartContainer.Id}")
```

