2011-06-20 42 views
4

WPF Datagridで次のような動作が見られます。 ビュー領域の高さよりも多くの項目がある場合、垂直スクロールが使用できます。 ビューの最後の行をクリックすると、直近の行が表示される場所で自動スクロールが発生します。C#WPF DataGrid垂直スクロール

データグリッドの最初の列はチェックボックスです。ユーザーがこの最後の行をクリックすると、チェックボックスのクリックに対してイベントが表示されません。他のすべての行のチェックボックスは正常に機能します。

自動スクロールを無効にしたいのですが、それを行う方法を理解できません。縦長、横長、両方、または(スクロールバーに関しては)なし場合

<Style x:Key="SingleClickEditing" TargetType="{x:Type toolkit:DataGridCell}"> 
    <EventSetter Event="CheckBox.Checked" Handler="OnChecked"/> 
    <EventSetter Event="CheckBox.Unchecked" Handler="OnChecked"/> 
</Style> 
+0

を変更し、 "CSHARP" のようなものはありません。言語の名前は "C#"です。 –

+2

そして "COctothorpe"と発音されます。 :) –

答えて

3

が、私はここに解決策を見つけた: WPF DataGrid: how do I stop auto scrolling when a cell is clicked?

を私はデータグリッドのスタイルに

<Style x:Key="SingleClickEditing" TargetType="{x:Type toolkit:DataGridCell}"> 
     <EventSetter Event="CheckBox.Checked" Handler="OnChecked"/> 
     <EventSetter Event="CheckBox.Unchecked" Handler="OnChecked"/> 
     <EventSetter Event="Control.RequestBringIntoView" Handler="DataGrid_Documents_RequestBringIntoView" /> 
</Style> 


private void DataGrid_Documents_RequestBringIntoView(object sender, RequestBringIntoViewEventArgs e) 
{ 
    e.Handled = true; 
} 
0

データグリッドのプロパティは、あなたがそれを設定することができなければならないことがあるが決定するであろう表示されます。

関連する問題