如何在Dynamics 365中移除视图选择器/导航列表中的图标
移除Dynamics 365个人视图右侧图标的解决方法
方法一:通过安全角色权限控制隐藏图标
- 进入高级设置 > 安全 > 安全角色,找到需要调整的用户角色
- 打开角色详情,切换到自定义实体标签,定位到目标实体(联系人/客户)
- 在视图权限组中,将编辑、删除、共享权限设置为无
- 保存角色设置后,对应角色的用户将无法看到视图右侧的编辑、删除等图标(系统管理员角色不受此限制,需用普通用户测试)
方法二:使用JavaScript脚本针对特定视图隐藏
如果需要只隐藏指定视图的图标,可以通过自定义Web资源实现:
- 在Power Apps门户中,进入目标实体的列表表单编辑器
- 创建新的Web资源,类型选择Script (JScript),并写入以下脚本:
function hideSpecificViewIcons() { // 定义需要隐藏图标的视图名称 const targetViewNames = ["Aktive personkunder", "Mine aktive personkunder"]; // 获取所有视图头部的图标元素 const viewIcons = document.querySelectorAll(".view-toolbar .action-item"); viewIcons.forEach(icon => { // 获取当前视图的名称 const viewNameElement = icon.closest(".view-container").querySelector(".view-name"); if (!viewNameElement) return; const currentViewName = viewNameElement.textContent.trim(); // 如果是目标视图,隐藏图标容器 if (targetViewNames.includes(currentViewName)) { icon.style.display = "none"; } }); } // 延迟执行确保DOM加载完成 window.addEventListener("load", () => { setTimeout(hideSpecificViewIcons, 800); }); - 将Web资源添加到列表表单的OnLoad事件中,保存并发布表单
注意事项
- 权限控制方法会影响该角色下所有用户的所有视图,适合全局隐藏需求
- JavaScript方法仅针对指定视图生效,但依赖Dynamics的DOM结构,后续UI更新可能需要调整选择器
- 现代Dynamics 365的Power Apps设计器中没有直接关闭图标的开关,需通过上述两种方式实现
内容的提问来源于stack exchange,提问作者snorregg
相关产品推荐
相关产品推荐

