如何访问 WindowsPhone 页面的子页面?
How to get access to children of WindowsPhone page?
我需要获取当前页面的子项及其边界框。我可以获得这样的页面:
var currentPage = ((PhoneApplicationFrame)Application.Current.RootVisual).Content as PhoneApplicationPage;
但我不知道如何访问页面的子项。我走错路了吗?如何正确操作?
注意:我正在尝试在 class 库中执行此操作。
我是这样处理的-
var currentPage = ((PhoneApplicationFrame)Application.Current.RootVisual).Content as PhoneApplicationPage;
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(currentPage); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(currentPage, i);
if (child is System.Windows.Controls.Control)
{
// do work
}
else if (child is System.Windows.FrameworkElement)
{
// do work
}
if (VisualTreeHelper.GetChildrenCount(child) > 0)
{
enumChildren(child); // recur. enumerate children
}
}
我需要获取当前页面的子项及其边界框。我可以获得这样的页面:
var currentPage = ((PhoneApplicationFrame)Application.Current.RootVisual).Content as PhoneApplicationPage;
但我不知道如何访问页面的子项。我走错路了吗?如何正确操作?
注意:我正在尝试在 class 库中执行此操作。
我是这样处理的-
var currentPage = ((PhoneApplicationFrame)Application.Current.RootVisual).Content as PhoneApplicationPage;
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(currentPage); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(currentPage, i);
if (child is System.Windows.Controls.Control)
{
// do work
}
else if (child is System.Windows.FrameworkElement)
{
// do work
}
if (VisualTreeHelper.GetChildrenCount(child) > 0)
{
enumChildren(child); // recur. enumerate children
}
}