DataGrid.SelectedCellsChanged Événement

Définition

Se produit lorsque la collection SelectedCells est modifiée.Occurs when the SelectedCells collection changes.

public:
 event System::Windows::Controls::SelectedCellsChangedEventHandler ^ SelectedCellsChanged;
public event System.Windows.Controls.SelectedCellsChangedEventHandler SelectedCellsChanged;
member this.SelectedCellsChanged : System.Windows.Controls.SelectedCellsChangedEventHandler 
Public Event SelectedCellsChanged As SelectedCellsChangedEventHandler 

Exemples

L’exemple suivant montre comment gérer l’événement SelectedCellsChanged et effacer les valeurs des cellules nouvellement sélectionnées.The following example shows how to handle the SelectedCellsChanged event and clear the values in the newly selected cells.

<Grid>
    <DataGrid Name="DG1" ItemsSource="{Binding}" SelectionUnit="CellOrRowHeader" SelectionChanged="DG1_SelectionChanged" SelectedCellsChanged="DG1_SelectedCellsChanged" />
</Grid>
private void DG1_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
{
    //Get the newly selected cells
    IList<DataGridCellInfo> selectedcells = e.AddedCells;

    //Get the value of each newly selected cell
    foreach (DataGridCellInfo di in selectedcells)
    {
        //Cast the DataGridCellInfo.Item to the source object type
        //In this case the ItemsSource is a DataTable and individual items are DataRows
        DataRowView dvr = (DataRowView)di.Item;

        //Clear values for all newly selected cells
        AdventureWorksLT2008DataSet.CustomerRow cr = (AdventureWorksLT2008DataSet.CustomerRow)dvr.Row;
        cr.BeginEdit();
        cr.SetField(di.Column.DisplayIndex, "");
        cr.EndEdit();
    }
}
Private Sub DG1_SelectedCellsChanged(sender As Object, e As SelectedCellsChangedEventArgs)
    'Get the newly selected cells
    Dim selectedcells As IList(Of DataGridCellInfo) = e.AddedCells

    'Get the value of each newly selected cell
    For Each di As DataGridCellInfo In selectedcells
        'Cast the DataGridCellInfo.Item to the source object type
        'In this case the ItemsSource is a DataTable and individual items are DataRows
        Dim dvr As DataRowView = DirectCast(di.Item, DataRowView)

        'Clear values for all newly selected cells
        Dim cr As AdventureWorksLT2008DataSet.CustomerRow = DirectCast(dvr.Row, AdventureWorksLT2008DataSet.CustomerRow)
        cr.BeginEdit()
        cr.SetField(di.Column.DisplayIndex, "")

        cr.EndEdit()
    Next
End Sub

Remarques

Vous pouvez gérer l’événement SelectedCellsChanged pour être averti lorsque la collection de cellules sélectionnées est modifiée.You can handle the SelectedCellsChanged event to be notified when the collection of selected cells is changed. Si la sélection comprend des lignes entières, l’événement Selector.SelectionChanged est également déclenché.If the selection includes full rows, the Selector.SelectionChanged event is also raised.

Vous pouvez récupérer les AddedCells et les RemovedCells à partir du SelectedCellsChangedEventArgs dans le gestionnaire d’événements.You can retrieve the AddedCells and RemovedCells from the SelectedCellsChangedEventArgs in the event handler.

S’applique à

Voir aussi