MASA.Blazor icon indicating copy to clipboard operation
MASA.Blazor copied to clipboard

树状 开可选时 拓展为单击文字部分甚至行即可实现勾选✔ 而不是只能点击icon

Open VleaStwo opened this issue 1 year ago • 4 comments

image 显示是如上图所示 只能点击icon实现选择

image 开启Hoverable后 有了 "行"的状态 开启Activatable后 有了可点的效果 但是没能实现点击后 加入select

希望在开启选择模式是 激活(Activatable)改为select

VleaStwo avatar Mar 08 '24 06:03 VleaStwo

@Lee-Lily-Lea 此功能我倾向于增加一个属性来开启点击行即可选中的特性。

capdiem avatar Mar 08 '24 07:03 capdiem

@Lee-Lily-Lea 此功能我倾向于增加一个属性来开启点击行即可选中的特性。

@capdiem

感觉和Activatable重复

实际上当开启了选择模式的时候 就不应该存在 激活项这个概念

Activatable更像是单选 (虽然Activatable有多选模式)

Selectable更像是多选

可以考虑下 类似其他几个组件的模式 改成单选和多选 (Multiple)

Activatable和Selectable更像是在UI的区别 一个是 给row加上 激活(颜色标记) [点亮] 一个是给前置增加 图标 [拾取]

个人倾向这俩是一个枚举 0 啥都不开 1 开启选择图标 2 开启激活模式

然后单独的属性bool Multiple 对于上述两种模式 影响相似 且不冲突

VleaStwo avatar Mar 08 '24 07:03 VleaStwo

@Lee-Lily-Lea 最小改动的方式只能是增加一个属性而不破坏现有的API,也许叫SelectOnRow

capdiem avatar Mar 08 '24 08:03 capdiem

@Lee-Lily-Lea 最小改动的方式只能是增加一个属性而不破坏现有的API,也许叫SelectOnRow

@capdiem 考虑兼容确实

另外 这个效果有几点注意

  1. 支持hover效果(可以不带 通过Hoverable=true实现也可以 但是不能不兼容)
  2. 开启以后 就不要选择到文字了 (user-select)
  3. 尽量是以多个无缝隙的row去点击 意思就是 不要出现在两行之间有空白 点了没反应

🚀你加油

VleaStwo avatar Mar 08 '24 08:03 VleaStwo