0

我有一个 WPF DataGridDataTable它的ItemsSource. 网格仅用于double值。但是,对于某些单元格没有指定数据,因此值可以是null。(实际上类型是DBNull)。这一切都很好,直到我开始编辑一个单元格,然后决定我不想要该单元格中的任何值,然后尝试将其留空并继续。DataGrid不让我这样做。我怎样才能让它以某种方式工作,以便我可以根据需要将初始null值重置为单元格?

4

2 回答 2

0

您必须使用值转换器...因此,如果单元格为空,您可以将值设置为 DBNull。但我认为你必须手动定义列......

在xml中:

<Window xmlns:conv="PathToConverter">
<Window.Resources>
    <conv:ValueConverter x:Key="valueConverter" />
</Window.Resources>
...
    <DataGrid.Columns>
        <DataGridTextColumn Header=""
                            Binding="{Binding doubleValue
                                    , Converter={StaticResource valueConverter}
                                    , Mode=TwoWay}"/>
        ...
    </DataGrid.Columns>
...
</Window>

您的转换器类必须实现IValueConverter接口

于 2012-05-15T09:16:27.287 回答
0

您在验证方面遇到问题吗?

否则,我相信,只需“Esc”-ing 就会取消当前的编辑。

于 2012-05-15T09:31:28.807 回答