DatePicker - это OneWay, но мне нужен TwoWay - PullRequest
1 голос
/ 07 сентября 2011

У меня есть следующая DataGrid в wpf.

<DataGrid AutoGenerateColumns="False" Grid.Row="1" Name="adsGrid" ItemsSource="{Binding Path=Ads}" CanUserAddRows="False" CanUserDeleteRows="False" SelectionChanged="adsGrid_SelectionChanged">
            <DataGrid.Columns>
                <DataGridTextColumn Header="ID" Binding="{Binding Path=ID}" IsReadOnly="True" />
                <DataGridTextColumn Header="File" Binding="{Binding Path=FileName}" IsReadOnly="True" />                
                <DataGridTemplateColumn Header="Expiration date" IsReadOnly="True">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <DatePicker SelectedDate="{Binding Path=ExpirationDate}" />
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
                <DataGridTextColumn Header="Info" Width="100*" Binding="{Binding Path=Info}" />
            </DataGrid.Columns>
        </DataGrid>

Проблема в том, что средство выбора DateTime не обновляет связанный объект, а считывает значение из него Я попытался добавить Mode = TwoWay, но это не помогло. Другие свойства обновлены должным образом.

1 Ответ

5 голосов
/ 07 сентября 2011

Для отладки я бы попытался:

  1. Проверить свойство ExpirationDate a DateTime (не обнуляемый или DateTimeOffset?)
  2. Настройка UpdateSourceTrigger=PropertyChanged
  3. Добавление конвертера и проверка, называется ли конвертер
...