private List<DependencyObject> CreateResourcesList ()
{
var list = new List<DependencyObject> ();
XamlElement walk = CurrentElement;
while (walk != null) {
XamlObjectElement obj = walk as XamlObjectElement;
if (obj != null) {
ResourceDictionary rd = obj.Object as ResourceDictionary;
if (rd != null)
list.Add (rd);
FrameworkElement fwe = obj.Object as FrameworkElement;
if (fwe != null)
list.Add (fwe);
}
walk = walk.Parent;
}
list.Reverse ();
return list;
}