This sort of “formula-generated variable” isn’t (to my knowledge) something that Grafana supports. Though based on what you’ve said, I wonder if you actually need it. Is there a big drawback to simply using ${CollectionName}.${AppName} in your queries?
Grafana does support chained variables - where you use the values of one or more existing variables to generate the list of options for a new variable - but that’s done through a data source query, and I don’t think that this is what you want here. The examples in the documentation are hopefully clear.
Finally, having a mapping between what’s displayed in the drop-down and the actual variable value should be possible since recently - check https://github.com/grafana/grafana/pull/27829 for a description. I haven’t used it myself but it sounds like it’s what you need.
Good luck!