Em um contexto de grade de dados onde há uma vinculação bidirecional no item selecionado, como você evita que o código g.cs atualize a vinculação se várias linhas forem selecionadas?
<dataGridControl:DataGrid
SelectedItem="{x:Bind Model.SelectedItem, Mode=TwoWay}"
Em um cenário em que o usuário seleciona várias linhas, ele usa a última linha selecionada quando você seleciona várias e, claro, considerando que é uma ligação bidirecional, você não pode limpar a propriedade do item selecionado no modelo de exibição sem limpar toda a seleção do DataGrid. O item selecionado no modelo de exibição é enganoso, considerando que várias linhas são selecionadas, e não a última.
O
SelectedItem
é definido internamente e é difícil mudar seu comportamento.Em vez disso, você pode criar um
DataGrid
controle personalizado e substituir aSelectedItems
propriedade por umObservableCollection
.ATUALIZAR
Dos comentários:
É difícil mudar o
SelectedItem
comportamento. Acho que você pode tentar criar um conversor de valor. Por exemplo: