首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在DetailsList控件中设置选中项

如何在DetailsList控件中设置选中项
EN

Stack Overflow用户
提问于 2017-04-07 22:44:49
回答 4查看 6.7K关注 0票数 5

我使用office-ui-fabric-react库中的DetailsList组件:

代码语言:javascript
复制
   import {DetailsList} from 'office-ui-fabric-react/lib/DetailsList';
   render () {
      const item = [
        {value: 'one'},
        {value: 'two'}
      ]
      return (
        <DetailsList
            checkboxVisibility={CheckboxVisibility.always}
            items={items}
            selection={selection}
        />
    }

值为` to的项目如何设置勾选?

EN

回答 4

Stack Overflow用户

发布于 2017-05-20 20:28:24

注意到您向DetailsList传递了一个selection。在selection中有一些方法可以做到这一点,包括:

  • setAllSelected(isAllSelected: boolean)
  • setKeySelected(key: string, isSelected: boolean, shouldAnchor: boolean)
  • setIndexSelected(index: number, isSelected: boolean, shouldAnchor: boolean)

在您的示例中,您可以为每个值指定一个key。然后在某个地方调用setKeySelected (例如,componentDidMount),告诉DetailsList选择特定的项目。

票数 3
EN

Stack Overflow用户

发布于 2020-04-23 05:50:27

我到处找都找不到答案。要在页面加载时设置所选项目,请执行以下操作:

代码语言:javascript
复制
<DetailsList
    columns={columns}
    items={getItems()}
    selection={getSelectedItems()}
/>

const getItems = () => {
     const items: any[] = [];

     itemList.map((item: any, i) => {
         items.push({
             key: i.toString(),
             Name: item.Name,
             Description: item.Description
         });
     });

     return [];
};

const getSelectedItems = (): ISelection => {
    const selection: Selection = new Selection();
    const items = getItems();

    selection.setItems(items);
    selectedItemsList.map((selectedItem: 
    any, s) => { 
         selection.setKeySelected(s.toString(), true, false);
    });

    return selection;
};
票数 1
EN

Stack Overflow用户

发布于 2021-09-01 06:44:32

如果希望默认选择所有列表项,只需在useEffect中调用selection.setAllSelected(true)即可。

代码语言:javascript
复制
const selection = new Selection();
useEffect(() => {
   selection.setAllSelected(true)
}, [selection]);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43281002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档