2013-06-19 54 views
0

好的,我在使用ScrollViewer(包含ItemsControl)在StackPanel內部正確解決問題。Grid和StackPanel問題 - 綁定

的事情是滾動的作品,但是:

  • 無論多少用戶向下滾動,表的底線是不可見的
  • 當滾動是...「出爐」 表彈出備份 ...

<ScrollViewer Height="Auto"> 
    <ItemsControl ItemsSource="{Binding Items, Mode=TwoWay}"> 
     <ItemsControl.ItemTemplate> 
      <DataTemplate> 
       <Grid VerticalAlignment="Top" Margin="0,0,0,0" x:Name="ResTable"> 
        <Grid.ColumnDefinitions> 
         <ColumnDefinition Width="0.10*"/> 
         <ColumnDefinition Width="0.30*" /> 
         <ColumnDefinition Width="0.30*"/> 
         <ColumnDefinition Width="0.30*"/> 
        </Grid.ColumnDefinitions> 
        <Grid.RowDefinitions> 
         <RowDefinition Height="*"/> 
         <RowDefinition Height="Auto"/> 
        </Grid.RowDefinitions> 
        <TextBlock Grid.Column="0" Text="{Binding [num]}" HorizontalAlignment="Center" /> 
        <TextBlock Grid.Column="1" Text="{Binding [A]}" HorizontalAlignment="Center" /> 
        <TextBlock Grid.Column="2" Text="{Binding [B]}" HorizontalAlignment="Center" /> 
        <TextBlock Grid.Column="3" Text="{Binding [C]}" HorizontalAlignment="Center" /> 
       </Grid> 
      </DataTemplate> 

     </ItemsControl.ItemTemplate> 
    </ItemsControl> 
</ScrollViewer> 

任何想法?


P.S.

  • 我已經看一些其他的答案類似的問題,但沒有一個似乎工作...

  • 我的主要想法是顯示一個表,其中的固定頭,並滾動內容(通過綁定填充) - 確定,也有幾件事情在頁面上(除了我的意思表)

回答

2

我猜問題是頂你應該使用父母元素耳鼻喉科像電網的StackPanel,因爲的StackPanel調整與卷軸等子項時,也有其缺點。

<Grid> 
<Grid.RowDefinitions> 
    <RowDefinition Height="Auto"/> 
    <RowDefinition Height="*"/> 
</Grid.RowDefinitions> 

<!-- Put headers in Grid.Row="0" --> 

<!-- Put Scrollviewer in Grid.Row="1" --> 

</Grid> 

而且Height="Auto"屬性可以從的ScrollViewer刪除,您可能需要使用VerticalAlignment="Stretch"的項目,採取一切可用的空間。我希望這是你正在努力實現的。

+0

這正是我所做的修正它**現在**。當我回到這裏時,我看到了你的回覆。當然是好的。它的工作原理!謝謝哥們!發現! :-) –