filter里面不能放TagPicker吗?

我之前在filter里面放 ,然后后端绑定值是没有问题的,我像放TagPicker,但是后端无法转换,我需要怎么处理?因为我的搜索条件中需要选中多个值。
11111111
222222
3333

把类型去掉:
(TagPicker)filterComponent_CustInfo.getValueComponent()

去掉以后怎么绑定值哇?

 TagPicker<Long> valueComponent = (TagPicker)filterComponent_CustInfo.getValueComponent();

 valueComponent.setOptionsMap(Map.of("test",2L,"test2",3L));

编译是没有问题了,但是运行的时候还是报错,
55555
66666
77777

<tagPicker/>

t 小写

可以了哈,谢谢,但是还有一个问题,这里选中以后显示出来的值为什么不是map里面的KEY,而是map里面的VALUE,map数据是这样的 {key=北京 value=10}
76767

需要用到 TagCaptionProvider:

var tagOptions = ImmutableBiMap.copyOf( Map.of("test", 2L, "test2", 3L));
valueComponent.setOptionsMap(tagOptions);
valueComponent.setTagCaptionProvider(l-> tagOptions.inverse().get(l));

你好,不行,会报错的
A
B

我的代码里可没有 Convert.toStr

如果不转String编译不通过的
1111111

你需要看懂我的例子,而不是照抄。我的例子里是用的 Map<String,Long> 作为选项,所以在 TagCaptionProvider 中,直接把 Map 反过来(调用 inverse())得到 Map<Long,String>,再get(l) 就得到 Long 对应的 String。

你的代码里看上去是 Map<Object,Long> Object 是通过 PlatfromSysDict::getFdName 得到的,你需要结合你的业务,看这个Object怎么转成String。

这些是Java的基础问题,要根据报的错误多思考。

你好解决了,顺便问一下,这个TagPicker样式能有其他显示格式吗?能放在控件里面吗?选中太多值会影响布局效果

可以看看 tagPosition 这个选项。或者设置 .jmix-tagcontainer 的css样式把标签水平排列。

我想放在控件里面,可以放吗?

你好,我刚刚试一了一下, ValuesPicker 不能绑定map值