2011-01-21 3 views
0

現在、ユーザーが選択した選択されたデータグリッド行のコレクションを取得しようとしています(複数行選択をオンにしています)。ユーザーは、私が手の行を選択したときにそうすべてのDataGridの選択したアイテムを取得する方法。 (最新のMOST)

<Style TargetType="DataGridRow"> 
     <EventSetter Event="Selected" Handler="DataGrid_RowSelectionChanged" /> 
</Style> 

各行には、私はデータグリッドのために、私はこのスタイルを追加

「選択と表示したいビジュアルオブジェクトにバインドされイベントが発生しました

しかし、選択した項目がまだ更新されておらず、以前選択した項目が表示されます。DataGrid.CurrentItemは、ちょうどクリックされて選択しようとしている行を表示します。しかし、そのマルチ選択以来、私はできるようになりたい現在選択されているすべての行を取得し、ビジュアルオブジェクトを「ハイライト表示」にする

DataGridから選択されたアイテムの最新のリストを取得する方法はありますか?新しい行を選択した後にその火を使用できるイベントはありますか?

おかげで、よろしく、あなたがDataGrid.SelectionChangedイベントを使用したい ケヴ

答えて

2

SelectionChangedEventArgsには、選択変更時に追加または削除された項目が含まれます。

 DataGrid dg = new DataGrid(); 
     dg.SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(OnSelectionChanged); 

     void OnSelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e) 
     { 
      foreach (var addedItem in e.AddedItems) 
      { 
       //do stuff 
      } 

      foreach (var removedItem in e.RemovedItems) 
      { 
       //do stuff 
      } 
     } 
+0

はい私は何をお探しですか?ありがとうございます。 – Kev84

関連する問題