【发布时间】:2022-06-23 22:02:48
【问题描述】:
【问题讨论】:
标签: fluentui-react
【问题讨论】:
标签: fluentui-react
这是不可能的,因为sort icon 直接在DetailsColumn.base.tsx 内部实现:
{column.isSorted && (
<IconComponent
className={classNames.sortIcon}
iconName={column.isSortedDescending ? 'SortDown' : 'SortUp'}
/>
)}
但如果您真的需要该功能,您可以重新编写DetailsList Component。提示:
<DetailsList
onRenderDetailsHeader={(headerProps, defaultRender) => {
return headerProps && defaultRender ? (
{defaultRender({
...headerProps,
onRenderColumnHeaderTooltip: props => {
return <TooltipHost {...props} children={/* Implementation here! */} />
}
})}
) : null;
}}
/>
保持相同的children functionality 并重写图标渲染。
Codepen example 提示。
【讨论】:
你可以通过一些 css 技巧来实现你想要的。在我的用例中,我只需要更改颜色。在下面的示例中,我添加了一个背景图像来设置您自己的图标。
<DetailsList onRenderDetailsHeader={(headerProps, defaultRender) => {
return defaultRender({
...headerProps,
styles: {
root: {
selectors: {
'.ms-DetailsHeader-cell': {
backgroundColor: '#0f238c',
color: 'white'
},
'.sortIcon-283': {
color: '#0f238c',
backgroundColor: '#0f238c',
backgroundImage: decendingFilter ? 'url([PATHTOIMG1])' : 'url([PATHTOIMG2])',
backgroundRepeat: 'no-repeat',
backgroundSize: 'contain',
},
},
}
}
});
}}
/>
【讨论】: