1

I need to give an icon to each section in my entities. For example, I need to give an icon to General information, another one for interactions section. Is there an idea about how could I do that? and how can I make a background color for each section please? Thanks in advance,

4

2 回答 2

3

无法将图标分配给部分。您可以做的最好的事情是为您的每个部分添加一个网络资源并让它们链接到图像,但这听起来并不像您想要的那样。

不支持修改表单背景颜色的方法。但是,如果您不关心保持支持,您可以使用 jQuery 来完成。将此函数放入您的表单脚本中:

function changeSectionBackgroundColor(sectionId, color) {
    parent.$("table.ms-crm-FormSection[name='"+sectionId+"']").css({"background-color": color});
}

并像这样使用它:

changeSectionBackgroundColor("General_Section_2", "red");
changeSectionBackgroundColor("General_Section_2", "#ababab");
于 2016-04-18T12:17:47.467 回答
1

您可以尝试执行以下操作来插入部分图像:

var stackoverflow = (function (Xrm)
{
    var sectionBarClassName = '.ms-crm-Form-SectionBar';                // name of the CSS class given to the Section's Label's <td> element

    function GetSection(tabName, sectionName)
    {
        var parentTab = Xrm.Page.ui.tabs.getByName(tabName);            // get the tab
        var section = parentTab.sections.getByName(sectionName);        // get the section

        return section;
    }

    function AddSectionImage(tabName, sectionName, imageUrl)
    {
        var section = GetSection(tabName, sectionName);                // retrieve section using Xrm
        var elSection = document.querySelector('table[name=' + section.getKey() + ']');
        var elSectionHeader = elSection.querySelector('tr:first-child');
        var elTitles = elSection.querySelectorAll(sectionBarClassName);
        if (elTitles.length === 1)                                     // we can assume that this section has a title
        {
            var elImg = document.createElement('img');
            elImg.src = imageUrl;
            elTitles[0].insertBefore(elImg, elTitles[0].firstChild);
        }
    }

    return {
        AddSectionImage : AddSectionImage
    };

})(Xrm);

然后调用此代码并传入选项卡和部分的名称(不是标签)以及要显示的图像的相对 URL。像这样:

stackoverflow.AddSectionImage('tab_5', 'tab_5_section_1', '/imgs/Cancel_16.png');

我只在 CRM 2016(在线)中测试过这段代码。而且图像有点粗糙。您需要自己处理样式(内联)和大小。

这当然是微软不支持的:)

于 2016-09-09T03:06:29.560 回答