Example #1
0
        protected virtual internal string GetMergeKey(UIElement item)
        {
            var key = UIElementExtension.GetMergeKey(item);

            if (string.IsNullOrEmpty(key))
            {
                if (item is HeaderedItemsControl)
                {
                    key = ((HeaderedItemsControl)item).Header as string;
                }
                if (string.IsNullOrEmpty(key) && item is FrameworkElement)
                {
                    key = ((FrameworkElement)item).Name;
                }
                if (string.IsNullOrEmpty(key))
                {
                    key = Guid.NewGuid().ToString();
                }
                UIElementExtension.SetMergeKey(item, key);
            }
            return(key);
        }
Example #2
0
 protected void InsertItem(object sourceView, UIElement item, IList target)
 {
     RememberMergedItem(sourceView, item);
     item.DisconnectFromParent();
     UIElementExtension.InsertSorted(item, target);
 }