Summary
- There is a parent WBP(Widget BluePrint class) with widget hierarchy that have NamedSlot.
- There is a child WBP, inherited parent above.
- In new WBP, you use child WBP as container of the other elements in widget hierarchy.
- In this condition, if you package them with nativization, the elements under child WBP in widget hierarchy become invalid.
- To avoid this, implement the appearance of WBP in the widget hierarchy of final child class.



ButtonA is null!
Download project files
You can download these project files from:
https://github.com/cutycutyhyaline/UE4NativizationSurvivalLog001
When you inherit WBP with widget hierarchy
Here is an WBP with NamedSlot. Let’s call this as WBP_Parent.

If you make new WBP by inheriting WBP_Parent, you can see like this.

In Hierarchy tab, there is nothing except name of new WBP.
But you can still see the elements of Parent in designr view at center of editor.
But, what if we add new stuffs in Hierarchy tab?

It has an warning message, but it works.
As you see, we got warning message in Compiler Results 😦
"This widget WBP_Child_B_WidgetHierarchyOverwrited and parent class widget WBP_Parent both have a widget hierarchy, which is not supported. Only one of them should have a widget tree."
“widget tree” in message means widget hierarchy. In precise, WidgetTree is inner class name of widget hierarchy.
OK. Anyway it works now, based on overwritied Widget Hierarchy.
Let’s see difference of these in more detail.
Settings to reproduce problem
Here is our main UI.


I placed WBP_Child_A_UsingWidgetHierarchyOfParent at upper line, with containing ButtonA
As like, I placed WBP_Child_B_WidgetHierarchyOverwrited at next line, with containing ButtonB.
I added some graph, to check each buttons are valid, and if they are null.
If they are valid, it change text of buttons, from “NotValidYet” to “YES! I AM VALID!”

We need to add this to game viewport.

In world setting, let’s change GameMode as BP_GameMode. Then, when we run in PIE, you can see this. Text of All buton changed to “YES! I AM VALID!”.

But, If we package this with nativization setting as Inclusive…

You can see this as you saw at summary.

WBP without compile warning message failed to show it’s child button as valid.
On the other hand, WBP got compile waring message, succeed to show it’s child as valid.
Conclusion
When WBP is nativized, unreal engine seems to could not recognize inherited widget hierarchy from parent class at completely.
If you want to avoid this, do not consist the appearance of WBP (Widget Hierarchy) in parent classes.
See also: BP – Nativizing a UMG widget hierarchy in which a child widget of another widget BP type has the “Is Variable” box unchecked will result in a crash at runtime. This was made me almost killed, too.
You can download these project files from:
https://github.com/cutycutyhyaline/UE4NativizationSurvivalLog001
I said twice because it’s important.