首页 > 解决方案 > WinForms LinkLabel DisabledLinkColor 属性不起作用?

问题描述

我一直在尝试让 WinForms LinkLabel 在控件被禁用(linkLabel1.Enabled = false;)时使用 DisabledLinkColor,但它似乎不想使用它。例如,我将它设置为绿色,当我禁用 LinkLabel 时,它会将文本变为灰色。事实上,我还没有找到让控件使用 DisabledLinkColor 的方法,但有可能我没有正确使用控件?

我的场景是我需要禁用控件但保持相同的文本颜色,最好将 Enabled 属性设置为 false(不覆盖 Paint 方法或向单击事件添加其他逻辑)。

谢谢你的帮助。

标签: winforms

解决方案


现在我在这里发帖,当然我想出了如何让这个属性工作。

        linkLabel1.Links.Add(new LinkLabel.Link());
        linkLabel1.Links[0].Enabled = false;

您可以将链接添加到 LinkLabel 并将每个链接单独设置为启用/禁用。然后它会正确使用 DisabledLinkColor。这实际上并不能解决我的确切情况,因为我无法将整个控件设置为禁用。在这种情况下,它仍然会显示为灰色文本。但是,我希望这仍能更清楚地说明 DisabledLinkColor 属性的工作原理。


推荐阅读