2016-12-02 9 views
0

リストグリッドの編集値を既存の値から数値フィールドのnullに設定する必要があります。編集は外部コンポーネントから行われ、グリッドに反映される必要があります。 Filedは必須ではないため、null値を持つことができます。 私は次のことをしようとしていた。SmartGWT:リストグリッドの編集値をプログラムで数値フィールドのnullに設定する

1)

Integer nullValue = null; 
listGrid.setEditValue(rowNum, fieldName, nullValue); 

2例外がスローされます)これはclearEditValue(たrowNum、 "フィールド名" と同じように働いているように見える)

HashMap map = new HashMap<>(); 
map.put("fieldName", null); 
listGrid.setEditValues(rowNum, map); 

私は」 SmartGWTを使用して6.0p

+0

をnullに設定されている。この場合、文字列 にnullをキャストすることができますか?警告メッセージやエラーメッセージはありましたか? – dydigging

+0

最初の解決策では、SmartGWTフレームワークからNPEを取得しています。 2番目の何も起こっていません(元の値はまだセルに表示されています) – mrh

答えて

0

検出された溶液。かかわらず、提出されたタイプの私はSmartGWTは任意の例外をスローされていないと編集値を使用すると、上記の二つの解決策を試した後に何が起こったのか

listGrid.setEditValue(rowNum, fieldName (String)null); 
0

Integerフィールドのセルをnullに設定すると、ListGridのfoコードの変更

public void setCellValue(int rowNum, String nameOfField, ListGrid listgrid) { 
    ListGridRecord row = listgrid.getRecord(rowNum); 
    Integer intNull = null; 
    row.setAttribute(nameOfField, intNull); 
    listgrid.updateData(row); 
} 

setCellValueが呼​​び出された後、対応するセルが正しく空白に変更されました。

+0

提案ありがとうございますが、updateDataの呼び出し中はデータがサーバーに送信されます。ユーザーが保存ボタンを押す前に変更を表示する必要があります – mrh

関連する問題