WPFアプリケーションでDataGridを使用していて、行が完全に選択されていない場合にのみ、SelectedCellsChanged
イベントで関数を実行します。ユーザーが行のヘッダーをクリックすると発生します。WPF DataGrid - 完全な行が選択されているかどうかを検出する方法
テーブルには1つの列しかありません。
次のコードを試しましたが、常にrowContainer.IsSelected
という値はfalseです。
どうすればいいですか?あなたが行うことができます
Private Sub DataGridEx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles Me.SelectionChanged
If SelectedCells.Count <> 1 Then
Exit Sub
End If
If Not SelectedCells.First.Item.ToString.Contains("NewItemPlaceholder") Then
Me.TheDispatcher.BeginInvoke(
Sub()
Dim cell = SelectedCells.First
Dim index = Items.IndexOf(cell.Item) + 1
Dim rowContainer As DataGridRow = ItemContainerGenerator.ContainerFromIndex(index)
If rowContainer IsNot Nothing Then
If Not rowContainer.IsSelected Then
' run a function here
End If
End If
End Sub,
DispatcherPriority.Input)
End If
End Sub