private double DetermineHeight()
{
if (!double.IsNaN(PositionY))
{
return _child.DesiredSize.Height;
}
switch (_child.VerticalAlignment)
{
case VerticalAlignment.Top:
{
return _child.DesiredSize.Height;
}
case VerticalAlignment.Bottom:
{
return _child.DesiredSize.Height;
}
case VerticalAlignment.Center:
{
return _child.DesiredSize.Height;
}
case VerticalAlignment.Stretch:
{
return AdornedElement.ActualHeight;
}
}
return 0.0;
}