diff --git a/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs b/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs index 3b2152d020..155eba834b 100644 --- a/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs +++ b/src/AddIns/DisplayBindings/ResourceEditor/Project/Src/ResourceEdit/ResourceList.cs @@ -35,6 +35,7 @@ namespace ResourceEditor ColumnHeader content = new ColumnHeader(); Dictionary resources = new Dictionary(); + Dictionary metadata = new Dictionary(); ImageList images = new ImageList(); UndoStack undoStack = null; @@ -129,6 +130,11 @@ namespace ResourceEditor if (!resources.ContainsKey(n.Key.ToString())) resources.Add(n.Key.ToString(), new ResourceItem(n.Key.ToString(), n.Value)); + n = rx.GetMetadataEnumerator(); + while (n.MoveNext()) + if (!metadata.ContainsKey(n.Key.ToString())) + metadata.Add(n.Key.ToString(), new ResourceItem(n.Key.ToString(), n.Value)); + rx.Close(); break; case ".resources": @@ -166,6 +172,12 @@ namespace ResourceEditor rxw.AddResource(item.Name, item.ResourceValue); } } + foreach (KeyValuePair entry in metadata) { + if (entry.Value != null) { + ResourceItem item = entry.Value; + rxw.AddMetadata(item.Name, item.ResourceValue); + } + } rxw.Generate(); rxw.Close(); break;