I avoid directly binding to content this way in code. The reason is that you have less control of overriding the content and it can adversely affect your startup times. Any code referenced that way is immediately loaded and anything that references and so on. IMO, a better way is to create a TAssetPtr and then let a Blueprint subclass specify the desired content. Then you can control when that content is loaded by using sync/async loading. There is some good documentation on async loading and in other posts on our Answers site
You don’t have to change your approach, but changing will give you the most flexibility and control in the long run. You also don’t have to create a BP that uses the node graph. It can just be a data only object. We use that pattern a bunch here.
OK. I managed to do this. I have exactly what I need with blueprint use. Thanks once more time joeGraf because I spent whole day messing with my earlier pure code conception