0

我想在单元格选择期间更新单元格数据上下文模型中的一些字段。

WPF 数据网格包含事件SelectedCellsChanged但我找不到任何数据上下文属性。是否可以从当前事件中获取单元格数据上下文?

private void OnSelectedCellChanged(object sender, SelectedCellsChangedEventArgs e)
        {
            var firstCell=e.AddedCells.FirstOrDefault();
            //How can i get cell datacontext?
        
        }

<DataGrid SelectionUnit="CellOrRowHeader" 
    x:Name="grid"
        SelectedCellsChanged="OnSelectedCellChanged"
        ItemsSource="{Binding Items}" ...

Ps 是否可以从 SelectedCellsChanged 上的单元格模板中获得控制权?先感谢您!

4

1 回答 1

0

只要确保您调试的不是网格“新行”,因为 datacontext 为空!:)

foreach (var item in e.AddedCells)
{
    var column = item.Column as FocusableDataGridTemplateColumn;
    if (column != null)
    {
        var presenter=item.Column.GetCellContent(item.Item);
        presenter.DataContext;
    }
}
于 2013-04-28T16:14:23.370 回答