WPF DatePicker не обновляет источник данных

У меня есть сетка данных WPF (на самом деле я использую Xceed DataGrid, но я думаю, что привязка по-прежнему работает так же). У меня есть столбец DatePicker в моей сетке, но когда я выбираю дату, она не обновляет базовый источник данных. Есть идеи?

Я уже пробовал:

{Binding Path=., Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}
{Binding Path=., Mode=TwoWay}
{Binding Path=., UpdateSourceTrigger=PropertyChanged}
{Binding Path=.}
{Binding .}
{Binding}

XAML:

<xcdg:Column FieldName="NeedDateOverride" Title="NEED DATE (OVERRIDE)" Width="100">
    <xcdg:Column.CellContentTemplate>
        <DataTemplate x:Name="needDateOverrideTemplate">
            <DockPanel HorizontalAlignment="Stretch" LastChildFill="True">
                <DatePicker SelectedDate="{Binding Path=., Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" SelectedDateChanged="NeedDateOverride_SelectedDateChanged" PreviewMouseDown="NeedDateOverride_GotFocus" CalendarOpened="NeedDateOverride_CalendarOpened"></DatePicker>
            </DockPanel>
        </DataTemplate>
    </xcdg:Column.CellContentTemplate>
</xcdg:Column>

C#:

public DateTime NeedDateOverride
{
    get
    {
        return this.needDateOverrideValue;
    }

    set
    {
        if (value != this.needDateOverrideValue)
        {
            this.needDateOverrideValue = value;
            NotifyPropertyChanged();
        }
    }
}

1 ответ

Положить DatePicker в EditTemplate из CellEditor, Пожалуйста, обратитесь к документации для примера. CellContentTemplate используется для изменения внешнего вида ячейки, когда она не находится в режиме редактирования.

Если вы используете встроенный DataGrid, вы должны использовать CellEditingTemplate а не CellTemplate,

Другие вопросы по тегам