Beispiel #1
0
        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);
            }
        }