怎么在datagrid上某一列实现LookupPickerField的效果

RT,在datagrid编辑状态,有一个字段是Lookuppickerfield,可以点击“…”弹出一个页面选择数据

首先要开启行内编辑,然后对特定的列使用 setEditFieldGenerator()


文档中这个例子是使用了 LookupField,类似的,你可以使用 LookupPickerField

1赞

好的,我试一下,太感谢了

请问如果是table的话,要将某个字段设置为Lookuppickerfield或lookupfield,该如何实现?

1.示例是给一个普通字段加一个LookupPickerField,我想给一个实体字段加一个PickerField,在普通字段上要可以,在实体上不可以,是为什么?
代码如下:

protected void onInit(InitEvent event) {
    cKDDataGrid.getColumnNN("user").setEditFieldGenerator(orderEditorFieldGenerationContext -> {
        PickerField<User> pickerField = uiComponents.create(PickerField.class);

        MetaClass metaClass = metadata.getClassNN(User.class);
        Action lookupAction = actions.create(LookupAction.ID);
        Action clearAction = actions.create(ClearAction.ID);

        pickerField.setMetaClass(metaClass);
        pickerField.addAction(lookupAction);
        pickerField.addAction(clearAction);
        //pickerField.setWidthFull();

        return pickerField;
    });
}

dddddddddddddd

dddddddddd