Good news and bad news.
You can’t do what you’re trying to do, because UDT parameters are read-only through the binding dialog. This is because UDT parameters are used to construct the UDT, and changing the parameters causes the entire UDT to be rebuilt; something you really don’t want for large UDTs and/or large volumes of UDTs.
If this is absolutely important to you, you could use a change script on the checkbox to set the value of the parameter, but you should absolutely NOT use a binding against the parameter in conjunction with said change script as it will create an infinite loop and trash your Designer session.
# this should also keep your parameter as a string.
system.tag.writeBlocking([self.view.params.udtValue + "/Parameters.almEnabledHiHi"],[str(currentValue.value)])
As for your mention of transforms being one way:
Transforms only work one way and will only ever be one way. Suppose you had a script transform; how would we run a script in reverse?