我在使用 c# win 表单创建的自定义按钮时遇到问题。选择表单时按钮显示正常,但一旦我从表单上单击,按钮上就会出现边框。发生这种情况的一个很好的例子是当单击桌面但表单仍处于最大化状态以便您可以看到其内容时。问题的图像如下所示:
这不会发生在所有按钮上,只有当按钮之前被点击时才会发生(一次只出现在一个按钮上)。这让我相信这与按钮焦点提示有关,但这些提示被设置为 false。边框设置为 0,我也将 tabstop 设置为 false。
有什么建议吗?
最佳答案
当您处理自定义按钮时,您应该设置:
button.TabStop = false;
button.FlatStyle = FlatStyle.Flat;
button.FlatAppearance.BorderSize = 0;
然后由于 ButtonBase
不支持 Color.Transparent
上的边框颜色,您可以通过设置 Argb 颜色来解决这个问题:
button.FlatAppearance.BorderColor = Color.FromArgb(0, 255, 255, 255); //transparent
关于C# WinForms - 未选择表单时自定义按钮不需要的边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9399215/