2012-05-15 4 views
0

WPF DataGridDataTable이고, ItemsSource입니다. 그리드는 double 값에만 사용됩니다. 그러나 일부 셀의 경우 데이터가 지정되지 않으므로 값은 null이 될 수 있습니다. (실제로 유형은 DBNull입니다.) 이 모든 것은 셀을 편집하기 시작할 때까지 제대로 작동하며 그 셀에 값을 넣지 않으려 고 결정한 다음 비워두기를 계속합니다. DataGrid은 이것을 허용하지 않습니다. 원하는 방식으로 초기 값 null 값을 셀에 다시 설정하려면 어떻게해야합니까?셀 내용을`System.DBNull`으로 리셋하는 방법

답변

0

값 변환기를 사용해야합니다 ... 셀이 비어 있으면 값을 DBNull로 설정할 수 있습니다. 는하지만 XAML에서

... 수동으로 열을 정의한다고 생각 :

<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> 

당신의 컨버터 클래스는

0

이 유효성 검사에 문제가있는 IValueConverter 인터페이스를 구현해야한다?

그렇지 않으면 Esc 키를 누르면 현재 편집이 취소됩니다.

+0

유효성 검사에 문제가 있습니다. – nakiya

관련 문제