38 lines
937 B
C#
38 lines
937 B
C#
|
|
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
|
|
namespace HandyControl.Controls
|
|
{
|
|
public class SimplePanel : Panel
|
|
{
|
|
protected override Size MeasureOverride(Size constraint)
|
|
{
|
|
var maxSize = new Size();
|
|
|
|
foreach (UIElement child in InternalChildren)
|
|
{
|
|
if (child != null)
|
|
{
|
|
child.Measure(constraint);
|
|
maxSize.Width = Math.Max(maxSize.Width, child.DesiredSize.Width);
|
|
maxSize.Height = Math.Max(maxSize.Height, child.DesiredSize.Height);
|
|
}
|
|
}
|
|
|
|
return maxSize;
|
|
}
|
|
|
|
protected override Size ArrangeOverride(Size arrangeSize)
|
|
{
|
|
foreach (UIElement child in InternalChildren)
|
|
{
|
|
child?.Arrange(new Rect(arrangeSize));
|
|
}
|
|
|
|
return arrangeSize;
|
|
}
|
|
}
|
|
}
|