protected override void ClearContainerForItemOverride(DependencyObject element, object item)
{
RibbonGalleryItem galleryItem = (RibbonGalleryItem)element;
// Turn off selection and highlight on GalleryItems that are being cleared.
// Note that we directly call Change[Selection/Highlight] instead of setting
// Is[Selected/Highlighted] because we aren't able to get ItemFromContainer
// in OnIs[Selected/Highlighted]Changed because the ItemContainerGenerator
// has already detached this container.
if (galleryItem.IsHighlighted)
{
galleryItem.RibbonGallery.ChangeHighlight(item, galleryItem, false);
}
if (galleryItem.IsSelected)
{
galleryItem.RibbonGallery.ChangeSelection(item, galleryItem, false);
}
galleryItem.RibbonGalleryCategory = null;
base.ClearContainerForItemOverride(element, item);
}