# \[UE5.2.1, Bug report\] References to widget elements break on 2nd level of widget inheritance

**URL:** <https://forums.unrealengine.com/t/ue5-2-1-bug-report-references-to-widget-elements-break-on-2nd-level-of-widget-inheritance/1268023>\
**Category:** Issues and Bug Reporting\
**Tags:** inheritance, Class, unreal-engine, Widget, Blueprint, question, UMG\
**Created:** [August 21, 2023, 6:07pm UTC](https://forums.unrealengine.com/t/ue5-2-1-bug-report-references-to-widget-elements-break-on-2nd-level-of-widget-inheritance/1268023 "2023-08-21T18:07:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![BOBtheROSS](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@BOBtheROSS](https://forums.unrealengine.com/u/BOBtheROSS)\
**Post date:** [August 21, 2023, 6:07pm UTC](https://forums.unrealengine.com/t/ue5-2-1-bug-report-references-to-widget-elements-break-on-2nd-level-of-widget-inheritance/1268023/1 "2023-08-21T18:07:10Z")

</div>

---------- edit ----------  
There is now a Bug Report on the bug tracker website

> **[The Unreal Engine Issues and Bug Tracker](https://issues.unrealengine.com/issue/UE-193748)**
>
> Welcome to the Unreal Engine Issue and Bug Tracker. You can check the status of an issue and search for existing bugs. See latest bug fixes too.

---------- edit end ----------

**Summary**  
variables of widget elements added in 2nd inheritance level are invalid.

**Steps to Reproduce**  
() is the parent class  
 is adding something in the Designer \>\> Hierachy tab (outliner)

1. create BaseWidget (UserWidget) [add NamedSlot named “N0”]
2. create Child1 (BaseWidget) [add NamedSlot to N0 named “N1”]
3. create Child2 (Child1) [add Button to N1 named “Button”]
4. activate the IsVariable checkbox in the details panel of the Button
5. In the Graph editor print the return value of the IsValid function for the Button variable

**results**  
“false” will be printed to the console. References to the widget elements added to the Child2 widget class are invalid and thus can not be manipulated in the graph.

**expected**  
“true” should be printed. References to the blueprints own widget elements should be valid just like in the parent classes.

**Comments**  
Inherited widget elements would be valid.  
On the 3rd inheritance level widget elements newly added in the Designer have a blank details panel and can’t be deleted.

**Minimal Example Project**  
[Bug\_Widget\_Inheritance.zip](https://forums.unrealengine.com/uploads/short-url/gCPYzt6X8X4Yp1r4MLZ0AWr5zKX.zip) (33.5 KB)

I suspect this is a problem with the way inheritance is implemented on widgets in general, so I will link my other bug reports with a similar issues here:

> [@\[UE5.2.1, Bug report\] Widget elements disappear on widgets with inheritance](https://forums.unrealengine.com/t/ue5-2-1-bug-report-widget-elements-disappear-on-widgets-with-inheritance/1268047):
>
> Summary if widget ‘A’ inherited from another widget, adding widget ‘A’ inside a widget and then adding widget elements to its NamedSlot, will result in the widget elments disappearing after saving and compiling (in that order). Steps to Reproduce () is the parent class is adding something in the Designer \>\> Hierachy tab (outliner) create Widget1 (UserWidget) [add named\_slot1] create Widget2 (Widget1) [add named\_slot2 to named\_slot1] create NewWidget (UserWidget) [add Widget2]-\>[add Button…

> [@\[UE5.2.1, Bug report\] Editor crashes on duplicating widget element on second inheritance level](https://forums.unrealengine.com/t/ue5-2-1-bug-report-editor-crashes-on-duplicating-widget-element-on-second-inheritance-level/1268087):
>
> Summary If a widget has a second inheritance level, duplicating a widget element with Ctrl+D inside a NamedSlot (with an Overlay element added to have a potential slot), will crash the engine. Steps to Reproduce () is the parent class is adding something in the Designer \>\> Hierachy tab (outliner) create BaseWidget (UserWidget) [add NamedSlot named “N0”] create Child1 (BaseWidget) [add NamedSlot to N0 named “N1”] create Child2 (Child1) [add an Overlay to N1] [add a Button to the Overlay] Tr…
