DataGrid.SelectedCellsChanged 이벤트
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SelectedCells 컬렉션이 변경될 때 발생합니다.
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
이벤트 유형
예제
다음 예제에서는 이벤트를 처리 SelectedCellsChanged 하고 새로 선택한 셀의 값을 지우는 방법을 보여줍니다.
<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
설명
선택한 셀의 컬렉션이 SelectedCellsChanged 변경될 때 알림을 받을 이벤트를 처리할 수 있습니다. 선택 영역에 전체 행이 Selector.SelectionChanged 포함된 경우 이벤트도 발생합니다.
이벤트 처리기의 에서 SelectedCellsChangedEventArgs 및 RemovedCells 를 검색 AddedCells 할 수 있습니다.
적용 대상
추가 정보
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET