Code:
ListGridField grid1= new ListGridField( "gridName" );
SelectItem dbItem = new SelectItem();
dbItem.setMultiple( true );
dbItem.setValueField( "gridName" );
dbItem.setOptionDataSource( dataSource);
dbItem.setAnimatePickList( true );
dbItem.addChangeHandler( new ChangeHandler()
{
public void onChange( ChangeEvent event )
{
Record selectedRecord = envPipGrid.getSelectedRecord();
int edited = envPipGrid.getRecordIndex( selectedRecord );
String[] oldValue = event.getOldValue().toString().split( "," );
String[] newValue = event.getValue().toString().split( "," );
for ( int i = 0; i < oldValue.length; i++ )
{
if ( !newValue[i].equalsIgnoreCase( oldValue[i] ) )
{
envPipGrid.setEditValue( edited, "gridName", oldValue[i] + "," + newValue[i] );
break;
}
}
}
} );
grid1.setEditorType( dbItem );
Leave a comment: