Runtime binding with Dictionary has limitations or did I missed something?

I have a TabVIew with several numeric fields under each Tab binded to a Dictionary<Enum,String>-type dataSource. Each field’s dataSourcePath was set with Enum as key.The problem is,in runtime debugging,I found out that all enums in the path were parsed to string where it’s supposed to be like dataSource[Enum.value1] now it’s dataSource[“value1”].It seems that PropertyPath does not support runtime resolving non-string mutable fields in its parts.Are there any workaround or it’s designed like this.

PropertyPath does support having non-string fields in its parts by using a Key part.

At the moment, it does require to setup it through code, as we don’t have a way to parse the key part from string from a UXML file. For dictionaries, at least for now, it’s better to handle dicitonaries through code.

Hope this helps.

I was binding through code.However when using methods like AppendKey or FromKey it appears that the part eventually converts Key object ,in my case ,an Enum object into literal string which doesn’t match original dictionary’s key type.

Can you paste the code you are using for this? The dictionary property bag is “special” as the properties it return is a KeyValuePair<TKey, TValue> so the property path to use is not always intuitive.