diff --git a/news/252.bugix b/news/252.bugix
new file mode 100644
index 0000000..3aade21
--- /dev/null
+++ b/news/252.bugix
@@ -0,0 +1,1 @@
+Fix DictConfig created from another DictConfig drops node types
diff --git a/omegaconf/dictconfig.py b/omegaconf/dictconfig.py
index 5499a5b..aef92ee 100644
--- a/omegaconf/dictconfig.py
+++ b/omegaconf/dictconfig.py
@@ -552,7 +552,7 @@ class DictConfig(BaseContainer, MutableMapping[str, Any]):
                 self._metadata.object_type = get_type_of(value)
             elif isinstance(value, DictConfig):
                 self._metadata.object_type = dict
-                for k, v in value.items_ex(resolve=False):
+                for k, v in value.__dict__["_content"].items():
                     self.__setitem__(k, v)
                 self.__dict__["_metadata"] = copy.deepcopy(value._metadata)
 

diff --git a/tests/structured_conf/test_structured_config.py b/tests/structured_conf/test_structured_config.py
index 73d446d..25b9f73 100644
--- a/tests/structured_conf/test_structured_config.py
+++ b/tests/structured_conf/test_structured_config.py
@@ -800,3 +800,13 @@ class TestDictSubclass:
             module: Any = import_module(class_type)
             with pytest.raises(KeyValidationError):
                 OmegaConf.structured(module.DictSubclass.Error.User2Str())
+
+    def test_construct_from_another_retain_node_types(self, class_type: str) -> None:
+        module: Any = import_module(class_type)
+        cfg1 = OmegaConf.create(module.User(name="James Bond", age=7))
+        with pytest.raises(ValidationError):
+            cfg1.age = "not a number"
+
+        cfg2 = OmegaConf.create(cfg1)
+        with pytest.raises(ValidationError):
+            cfg2.age = "not a number"

Creating a DictConfig from another drops node types
test:

```
@dataclass
class User:
    name: str
    age: int

cfg1 = OmegaConf.create(module.User(name="James Bond", age=7))
with pytest.raises(ValidationError):
  cfg1.age = "not a number"

cfg2 = OmegaConf.create(cfg1)
with pytest.raises(ValidationError):
  cfg2.age = "not a number"
```
tests/structured_conf/test_structured_config.py::TestDictSubclass::test_construct_from_another_retain_node_types[tests.structured_conf.data.dataclasses]
tests/structured_conf/test_structured_config.py::TestConfigs::test_nested_config_is_none[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_nested_config[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_value_without_a_default[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_union_errors[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_config_with_list[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_assignment_to_nested_structured_config[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_assignment_to_structured_inside_dict_config[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_config_with_dict[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_structured_config_struct_behavior[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[BoolConfig-BoolConfigAssignments-init_dict0-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[IntegersConfig-IntegersConfigAssignments-init_dict1-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[FloatConfig-FloatConfigAssignments-init_dict2-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[StringConfig-StringConfigAssignments-init_dict3-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[EnumConfig-EnumConfigAssignments-init_dict4-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[BoolConfig-BoolConfigAssignments-init_dict5-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[IntegersConfig-IntegersConfigAssignments-init_dict6-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[FloatConfig-FloatConfigAssignments-init_dict7-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[StringConfig-StringConfigAssignments-init_dict8-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[EnumConfig-EnumConfigAssignments-init_dict9-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_field_with_default_value[AnyTypeConfig-AnyTypeConfigAssignments-init_dict10-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_untyped[None-expected_init0-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_untyped[input_init1-expected_init1-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_untyped[None-expected_init2-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_untyped[input_init3-expected_init3-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_interpolation[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[BoolOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[IntegerOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[FloatOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[StringOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[EnumOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_optional[StructuredOptional-tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_typed_list[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_typed_dict[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merged_type1[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merged_type2[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merged_with_subclass[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merge_with_subclass_into_missing[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merged_with_nons_subclass[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_merge_into_Dict[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_typed_dict_key_error[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_typed_dict_value_error[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_typed_list_value_error[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_list_examples[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_dict_examples[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_enum_key[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_dict_of_objects[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_list_of_objects[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_promote_api[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_promote_to_class[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestConfigs::test_promote_to_object[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::test_dataclass_frozen tests/structured_conf/test_structured_config.py::TestDictSubclass::test_str2str[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_str2str_as_sub_node[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_color2str[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_color2color[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_str2user[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_str2str_with_field[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::test_str2int_with_field_of_different_type[tests.structured_conf.data.dataclasses] tests/structured_conf/test_structured_config.py::TestDictSubclass::TestErrors::test_usr2str[tests.structured_conf.data.dataclasses]