using System;
using System.Windows;
using System.Windows.Controls;
namespace SWS.CAD.Views.CustomControl
{
///
/// 当不需要使用Grid的分行分列,则可使用 SmallPanel
///
public class SmallPanel : Panel
{
///
/// Content measurement.
///
/// Constraint
/// Desired size
protected override Size MeasureOverride(Size constraint)
{
Size gridDesiredSize = new Size();
UIElementCollection children = InternalChildren;
for (int i = 0, count = children.Count; i < count; ++i)
{
UIElement child = children[i];
if (child != null)
{
child.Measure(constraint);
gridDesiredSize.Width = Math.Max(gridDesiredSize.Width, child.DesiredSize.Width);
gridDesiredSize.Height = Math.Max(gridDesiredSize.Height, child.DesiredSize.Height);
}
}
return (gridDesiredSize);
}
///
/// Content arrangement.
///
/// Arrange size
protected override Size ArrangeOverride(Size arrangeSize)
{
UIElementCollection children = InternalChildren;
for (int i = 0, count = children.Count; i < count; ++i)
{
UIElement child = children[i];
if (child != null)
{
child.Arrange(new Rect(arrangeSize));
}
}
return (arrangeSize);
}
}
}