Is there a "this" type reference in the expression language?

I have an expression binding on the border property of a container. I would like to use this container like a template without actually being a template if that makes sense, where there will be multiple containers on a single window. Within my expression I need the “name” property of the container. If there are multiple containers on a screen and depending on if things are grouped together or not, trying to get the name property of the container within the expression becomes a bit of a pain. Is there any way to reference the object, ie the container, that the binding is tied to? In java it might look something like “” as a reference to the name.

There is not a way to do this within the expression language (might be good for

However, there is a workaround. I would caution that this can cause unnecessary CPU load, and so I would definitely recommend simply using a template. However, in an expression binding using runScript, self is available in the namespace. So: runScript("") will return the name of the component that fired the expression.


Similarly, you can use the local variable in objectScript() expressions. So: objectScript("") does the same as Paul’s example. The advantage of objectScript() is its ability to reference while computing a python one-liner that includes passed parameters (in args).

1 Like