That's an ObservableCollection, an enumerable source of type Lazy<MenuItemPart,IPluginMetadata> not sure how well that's gonna go over with the way WPF then iterates through the collection.
Lazy is a very delicate type and using it this way is a bit strange.
This LINQ stuff came to mind, but it's virtually the same thing.
ExtensionsMenuItem.ItemsSource = from x in MenuItemExtensions select x.Value;
I'm gonna settle on just telling on you. This is wrong, the Lazy part is not meant to be exposed like that. It's meant to be able to query metadata and then fetch the right instance (defer the instantiation of parts you don't need).