2010-01-07 56 views
0

当控件位于滚动查看器中的某处时,是否有方法可以确定Silverlight中控件的可见区域的大小和位置?确定控件的可见区域

我有一个在一些行和列的网格内的控件。网格位于滚动查看器中。滚动查看器具有固定的宽度和高度。网格的宽度和高度大于滚动查看器的宽度和高度。在某些时候,由于滚动,我的控件只能部分显示。

我在弹出窗口中有一个矩形,当鼠标放在它上面时,需要将其放在我的控件上方。我需要使矩形的大小与我的控件的可见部分完全相同。

我该怎么做?

谢谢。

+0

您是否检查过查看滚动查看器是否在您的网格上设置剪切路径? – 2010-01-10 21:45:17

回答

0

我不这么认为....这里是使用控制

<ScrollViewer x:Name="ScrollHor" VerticalScrollBarVisibility="Auto" Margin="17 215 0 0" Height="100" Grid.Row="1" Grid.Column="1"> 
    <StackPanel Height="Auto"> 
     <Grid x:Name="grdTimeline"> 
      <!-- Used to add dynamically controls--> 
     </Grid> 
    </StackPanel> 
</ScrollViewer> 

在页面代码的一部分,是什么样子控制的XAML

 <Grid x:Name="LayoutRoot" MouseLeftButtonUp="LayoutRoot_MouseLeftButtonUp"> 

      <Grid.ColumnDefinitions> 
       <ColumnDefinition x:Name="labelColumn" Width="100" /> 
       <ColumnDefinition x:Name="mainColumn" Width="auto" /> 
       <ColumnDefinition x:Name="buttonColumn" Width="30" /> 
      </Grid.ColumnDefinitions> 

      <Grid.RowDefinitions> 
       <RowDefinition x:Name="rowHeader" Height="30"/> 
       <RowDefinition x:Name="businessRow" Height="Auto"/> 
      </Grid.RowDefinitions> 
..... 

     </Grid> 

Thanksfor回答和问候,

+0

我接受了这个答案,因为我找不到上面提到的问题。 – 2010-08-19 17:17:02