2013-09-29 49 views
2

我有一个XAML页面,我想知道一个元素是否可以在屏幕上显示给用户。如何查看屏幕中是否可见元素?

<StackPanel> 
    <TextBlock Text="Can you see me?"/> 
</StackPanel> 

在这里我想如果StackPanelTextBlock是可见的,我改变它的颜色。可能吗?

(这是一个Windows Phone应用程序)

+0

嗨@makc。我不是指'可见'或'折叠'..想到一个长页面,一个元素可以在页面的底部并且对用户不可见,所以如果他滚动可以看到它。 – user2799350

回答

0

你可以得到StackPanel相对于布局根的坐标。如果它超出了屏幕边框,则不会显示:

stackPanel.TransformToVisual(layoutRoot).Transform(new Point()) 

注意这不会对虚拟化ItemsControl的控制按钮工作。

相关问题