Следующий фрагмент кода из SDK Silverlight, и я пытаюсь понять причину, по которой это так. Может ли кто-нибудь объяснить необходимость цикла for
?Какова цель этого метода в исходном коде Silverlight SDK?
internal static DependencyObject GetVisualRoot(DependencyObject d)
{
DependencyObject root = d;
for (; ;)
{
FrameworkElement element = root as FrameworkElement;
if (element == null)
{
break;
}
DependencyObject parent = element.Parent as DependencyObject;
if (parent == null)
{
break;
}
root = parent;
}
return root;
}