예제 #1
0
        protected override Size ArrangeOverride(Size arrangeBounds)
        {
            InitializeChildrens();
            double x = indent;
            double w = arrangeBounds.Width;
            double h = arrangeBounds.Height;

            var size = expander.DesiredSize;

            expander.Arrange(new Rect(x, (h - size.Height) / 2, size.Width, size.Height));
            x += size.Width;

            if (!icon.ImageReference.IsDefault)
            {
                size = icon.DesiredSize;
                icon.Arrange(new Rect(x, (h - size.Height) / 2, size.Width, size.Height));
                x += size.Width;
            }

            size = content.DesiredSize;
            content.Arrange(new Rect(x, (h - size.Height) / 2, size.Width, size.Height));
            x += size.Width;

            return(new Size(x, h));
        }