private void TrackPlaceHolder() { var placeHolderName = Rendering.PlaceholderKey.ToString(); var placeHolderTreeViewItem = DeviceTreeViewItem.FindPlaceHolderTreeViewItem(placeHolderName) as BaseTreeViewItem; if (placeHolderTreeViewItem == null) { placeHolderTreeViewItem = new TempPlaceHolderTreeViewItem(DeviceTreeViewItem, placeHolderName) { IsExpanded = true }; DeviceTreeViewItem.Items.Add(placeHolderTreeViewItem); } var parent = GetParentTreeViewItem() as BaseTreeViewItem; Remove(); if (parent is TempPlaceHolderTreeViewItem && parent.Items.Count == 0) { parent.Remove(); } placeHolderTreeViewItem.Items.Add(this); placeHolderTreeViewItem.IsSelected = true; }
public void RenderUnusedRenderings([NotNull] List <RenderingItem> unusedRenderings) { Assert.ArgumentNotNull(unusedRenderings, nameof(unusedRenderings)); foreach (var rendering in unusedRenderings) { var placeHolderName = rendering.PlaceholderKey.ToString(); var placeHolderTreeViewItem = FindPlaceHolderTreeViewItem(placeHolderName) as BaseTreeViewItem; if (placeHolderTreeViewItem == null) { placeHolderTreeViewItem = new TempPlaceHolderTreeViewItem(this, placeHolderName) { IsExpanded = true }; Items.Add(placeHolderTreeViewItem); } var renderingTreeViewItem = new RenderingTreeViewItem(this, rendering); placeHolderTreeViewItem.Items.Add(renderingTreeViewItem); } }