如何在非 ui 线程中按名称获取网格 - Windows Phone

How to get Grid by name in a non-ui thread - Windows Phone

在我的 wp 应用程序中,我使用的是 silverlight 8.1 和

我的 MainPage.xaml

中有这个网格
<Grid x:Name="LayoutRoot" Background="Transparent" HorizontalAlignment="Stretch">
        <Grid.RowDefinitions>
        ... 

我需要使用这个

从另一个文件和另一个线程中获取它
Deployment.Current.Dispatcher.BeginInvoke(() => {
... do some work on UI here 
}

如何以编程方式获取它?

我尝试使用 MainPage.LayourRoot 但它没有找到 LayoutRoot。

好的,我明白了。有一种方法可以告诉用户当前所在的页面:

var currentPage = ((App)Application.Current).RootFrame.Content as PhoneApplicationPage;

您只需获取它并将其转换为特定的页面类型,例如 MainPage,然后您就可以使用 x:Name 属性.[=13 获取对所有视觉元素的引用=]

请告诉我这段代码是否有效。我无法调试它,因为我不使用 SDK 8,而且我确定这在 WinRT 上不起作用。