DataGrid.SelectedCellsChanged Gebeurtenis
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Treedt op wanneer de SelectedCells verzameling wordt gewijzigd.
public:
event System::Windows::Controls::SelectedCellsChangedEventHandler ^ SelectedCellsChanged;
public event System.Windows.Controls.SelectedCellsChangedEventHandler SelectedCellsChanged;
member this.SelectedCellsChanged : System.Windows.Controls.SelectedCellsChangedEventHandler
Public Custom Event SelectedCellsChanged As SelectedCellsChangedEventHandler
Public Event SelectedCellsChanged As SelectedCellsChangedEventHandler
Gebeurtenistype
Voorbeelden
In het volgende voorbeeld ziet u hoe u de SelectedCellsChanged gebeurtenis kunt afhandelen en de waarden in de zojuist geselecteerde cellen kunt wissen.
<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
Opmerkingen
U kunt de SelectedCellsChanged gebeurtenis afhandelen om een melding te ontvangen wanneer de verzameling geselecteerde cellen wordt gewijzigd. Als de selectie volledige rijen bevat, wordt de Selector.SelectionChanged gebeurtenis ook gegenereerd.
U kunt de AddedCells en RemovedCells van de SelectedCellsChangedEventArgs in de gebeurtenis-handler ophalen.