diff --git a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.XamlDom/Project/CollectionSupport.cs b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.XamlDom/Project/CollectionSupport.cs index 5907fce5bd..e50ad879c8 100644 --- a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.XamlDom/Project/CollectionSupport.cs +++ b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.XamlDom/Project/CollectionSupport.cs @@ -68,10 +68,14 @@ namespace ICSharpCode.WpfDesign.XamlDom } else if (collectionInstance is ResourceDictionary) { object val = newElement.GetValueFor(null); object key = newElement is XamlObject ? ((XamlObject)newElement).GetXamlAttribute("Key") : null; - if (key == null) { + if (key == null || key == "") { if (val is Style) key = ((Style)val).TargetType; + else if (val is DataTemplate) + key = ((DataTemplate)val).DataType; } + if (key == null || key == "") + key = val; ((ResourceDictionary)collectionInstance).Add(key, val); } else { collectionType.InvokeMember(