У меня есть таблица данных WPF с использованием шаблона MVVM. Мне нужно получить значение текущей ячейки и соседней ячейки, когда фокус меняется с текущей ячейки. Это мое XAML
<DataGrid x:Name="dgOptions" Grid.Row="1" SelectedCellsChanged="dgOptions_SelectedCellsChanged">
<materialDesign:DataGridTemplateColumn x:Name="optValueColumn" Width="1*" CellTemplateSelector="{StaticResource TemplateSelector}">
<materialDesign:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<Grid materialDesign:FocusManager.FocusedElement="{Binding ElementName=optValueColumn}"/>
</DataTemplate>
</materialDesign:DataGridTemplateColumn.CellEditingTemplate>
<materialDesign:DataGridTemplateColumn.Header>
<TextBlock Text="Value" TextWrapping="Wrap" TextAlignment="Center"/>
</materialDesign:DataGridTemplateColumn.Header>
</materialDesign:DataGridTemplateColumn>
<materialDesign:DataGridTemplateColumn x:Name="optDefaultValueColumn" Visibility="Hidden" CellTemplateSelector="{StaticResource TemplateSelector}"/>
</DataGrid>
У меня уже есть событие SelectedCellsChanged
, которое делает некоторые фокусировки. Мне нужно получить значение optValueColumn
и optDefaultValueColumn
в этом случае. Так как это не имеет ничего общего с бизнес-логикой c, я решил сделать это в коде позади себя.
Как мне получить значения?
Или есть ли лучший способ получить то же самое в других событиях?