Differences In Binding Against Properties With Or Without Data

I noticed a difference in the property binding tree for the same component depending on if I view it in expressions versus property. The properties that break out the data in a selected row are missing if I browse on the property binding screen. See screenshots. Is this intentional?
Version: Version: 8.0.0-beta0 (b2019030902)
Property Binding

Expression Binding

In trying to replicate your issue I don’t think the difference you are seeing is coming from doing a property binding vs an expression binding, but rather going into the property binding tree when the array you are binding to contains data or not.

In your example when binding against a table’s props.selection.data, the property tree will look like the top picture if the data array is empty and will look like the bottom picture if it has at least one value in it. I was able to replicate both while doing a property binding and an expression binding.

If you are having issues getting the first value’s description, it may make sense to do the property binding against the entire array with a script transform that handles when it’s empty like:

	if len(value)<=0:
		return "nothing"
	else:
		return value[0].Description

Yeah, I stumbled on that yesterday, and thought that may be the cause. I just didn’t have a chance to test it. I didn’t think that it was since I took these screenshots back to back, but when I tried this morning it worked as expected.

Thanks for the help. Guessing this one is just a user error

That would be my guess, however if you ever run into it again feel free to bring this up again. If it happens again, include the binding preview as part of the screenshots. That will clue us in on the status of the property when things were looking different.

1 Like