Not sure if that helps but I’ll clarify what I meant:
Do note that I did not even select a class for my widget.
The moment you set type of the pin in the Make Array node, the returned array becomes of the same type. So the best way of working with make array is to make its type the base parent class. This will not work if the array pin is connected, though.
If you make the first pin a UserWidgetObject, you can then connect any user widget to any pin and the output array will still be UserWidgetObject, acceptable by any UMG panels. (this will not work for native widgets like stand alone buttons)
In your case (screenshot 2):
You’re making the first pin UMGContentBrowserObject type, the second pin cannot accept anything else anymore as the whole MakeArray became of type of the first pin.
In your 4th screenshot, you can disconnect pin 0, and remove it altogether and it will be fine. Apparently both of your widgets inherit from the CompositeWidget.