2011-11-12 36 views
2

私は、アプリケーションを実行すると、垂直スクロールバーが正常に動作します。ただし、新しい行/行を追加すると、バー(スライダー上を上下に移動するコントロール)がスライドしません。マウスホイールを使用すると、行のリストを上下にスクロールすることができ、上下の矢印をクリックすることができます。したがって、スクロールバーは機能しますが、期待どおりには動きません。コントロールは、最初と同じように上下にスライドする必要がありますが、その新しい行を追加した後では、コントロールは移動しません。Datagridスクロールバーの動作が停止する

私は、この明確な行動が見つかるまで多くの問題を調査しましたが、失敗しました。ここにXAMLの一部があります。

<DataGrid x:Name="inventoryDataGrid" AutoGenerateColumns="False" 
    SelectedValuePath="Id" 
    EnableRowVirtualization="True"    
    EnableColumnVirtualization="True" 
    Style="{DynamicResource DataGridDemoStyle}" 
    CanUserSortColumns="True" 
    VerticalAlignment="Top" 
    ItemsSource="{Binding Source={StaticResource claimInventoryViewSource}}" 
    RowEditEnding="dgInv_RowEditEnding" 
    CellEditEnding="dgInv_CellEditEnding" 
    SelectionChanged="dgInv_SelectionChanged"            
    IsSynchronizedWithCurrentItem="True" CanUserAddRows="False" 
    RowHeaderWidth="0" 
    Sorting="DataGrid_Standard_Sorting" MouseDoubleClick="inventoryDataGrid_DoubleClick" 
    CanUserDeleteRows="True" 
    SelectionMode="Single" 
    HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Visible" 
    Width="999.5" 
    CommandManager.PreviewCanExecute="Grid_PreviewCanExecute" Grid.Column="0" 
    Grid.Row="1" 
    Margin="0,3,0,0" RowDetailsVisibilityMode="VisibleWhenSelected" Height="227"  
    LostFocus="inventoryDataGrid_LostFocus" Background="#FFFCF2E7" 
    AlternatingRowBackground="#FFF2F2D6" RowBackground="#FF6FC4BF" 
    GotFocus="inventoryDataGrid_GotFocus"> 
<DataGrid.Resources> 
<Style x:Key="DataGridCellStyle" TargetType="{x:Type DataGridCell}" > 
    <Style.Triggers> 
    <Trigger Property="IsSelected" Value="True"> 
    <Setter Property="Foreground" Value="White"/> 
    </Trigger> 
    </Style.Triggers> 
</Style> 
</DataGrid.Resources> 
<DataGrid.Columns> 

ありがとうございます!

答えて

1

私はこの問題を解決できました。問題は、長い時間前、EndEditルーチン(ここでは:EndEdit equivalent in WPF)で実装されたコードがあったため、データグリッドのスクロールバーでこの不規則な動作が発生したことです。

このコードを削除すると、スクロールバーは問題なく動作しました。もちろん、私はEndEditを使わずにテキストボックスにデータを保存する方法を研究しなければなりませんでしたが、それはこの質問の話題です。

関連する問題