2017-06-20 17 views
0

1つの列をソートします。その列の1つの値を編集します。行は自動的に再配置されます。Telerik RadGridView列ヘッダーのクリックでのみソート

CellValueChangedイベントで値が変更されたときに、編集する前にその列(またはグリッド全体)の並べ替えを無効にして再度オンにすると、再度ソートされます。

列ヘッダーをクリックしたときにのみグリッドソートを行うことはできますか?

編集:私は、同じ方向に見ていたが、この時につまずくかもしれない誰かのためにそれをより明確にするよう

は、私は答えとして、以下の提案を受け入れ、ここVB.netでの私の実装です。グリッドはEnableCustomSorting = Trueでなければなりません。

Private Sub grid_CellClick(sender As Object, e As GridViewCellEventArgs) Handles grid.CellClick 
    If TypeOf sender Is GridHeaderCellElement Then 

     If dtGrid.DefaultView.Sort = e.Column.Name + " ASC" Then 
      dtGrid.DefaultView.Sort = e.Column.Name + " DESC" 
      'This line displays "down arrow" in column header, but makes sorting much slower for some reason. 
      'e.Column.SortOrder = RadSortOrder.Descending 
     Else 
      dtGrid.DefaultView.Sort = e.Column.Name + " ASC" 
      'e.Column.SortOrder = RadSortOrder.Ascending 
     End If 

    End If 
End Sub 

答えて

0

あなたはワンショットの並べ替えをしたい場合、あなたは(あなたのリストにオブジェクトを移動したり、リバウンド、新しい順に項目を追加することで新しいものを作成する)あなたのデータソースであなたのオブジェクトの順序を変更する必要があります。

もちろん、列ヘッダーのclickイベントでこれを処理する必要があります。

関連する問題