# View Canvas Instance Index Number

**URL:** <https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [July 9, 2025, 6:02pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283 "2025-07-09T18:02:27Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aaron\_Shivnen](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@Aaron\_Shivnen](https://forum.inductiveautomation.com/u/Aaron_Shivnen)\
**Post date:** [July 9, 2025, 6:02pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/1 "2025-07-09T18:02:27Z")

</div>

I am trying to find a way to pull the Index Number of an Instance in the view Canvas for use in expression binding.

the property() function does not seem to have access to the index number of the instance. Having this would greatly accelerate my screen production.

Thank you

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [July 9, 2025, 6:40pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/2 "2025-07-09T18:40:43Z")

</div>

An instance of what?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 9, 2025, 6:45pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/3 "2025-07-09T18:45:12Z")

</div>

Where do you need this? Inside the nested views? If so, include the instance number in the parameters for the instance and make an input parameter to receive it in each nested view.

---

<div class="post-metadata">

**Author:** ![Aaron\_Shivnen](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@Aaron\_Shivnen](https://forum.inductiveautomation.com/u/Aaron_Shivnen)\
**Post date:** [July 9, 2025, 7:07pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/4 "2025-07-09T19:07:13Z")

</div>

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/c/b/cb6c84d1c6d5baf1d146df2a6e2c59a899f458cf.png)

These Instance numbers. The image is the of View Canvas property tree.

I am trying to create a dynamic configurable view with this. Each new instance added has its position relative to the previous instance. Each instance is a simple rectangle shaped view.

in my 'top' and 'left' properties for each instance I have this binding:

{this.props.instances[1].top} + {this.custom.convWidth} \* {this.custom.instances[2].yRel}

For each new instance I need to open the binding and change the index [#] numbers. Really I just want to copy and paste without the need to open and edit each binding.

The property 'yRel' will typically be either +1 or -1

---

<div class="post-metadata">

**Author:** ![Aaron\_Shivnen](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@Aaron\_Shivnen](https://forum.inductiveautomation.com/u/Aaron_Shivnen)\
**Post date:** [July 9, 2025, 7:11pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/5 "2025-07-09T19:11:24Z")

</div>

More information for my current process. I am creating the bindings for 1 or 2 instances as I want them. then I copy the View Canvas to notepad++ and copy paste the structure and then find/replace instance numbers to set the bindings for everything new. I just don't want to click my mouse 1 million times.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 9, 2025, 7:42pm UTC](https://forum.inductiveautomation.com/t/view-canvas-instance-index-number/108283/6 "2025-07-09T19:42:31Z")

</div>

Consider dynamically generating this with an iterator expression binding, as is possible with my Integration Toolkit. Perhaps using the [lag()](https://www.automation-pros.com/toolkit/doc/iteration.html#lag) function to extract information from the prior instance to use in the current calculation.

(You would move the base list of instances to a custom property, and use it as the source of a `forEach()` expression on `props.instances`.)
