输入时删除按钮边框

时间:2013-10-31 08:48:58

标签: c# button toolstrip

当我将鼠标悬停在我的C#表单上的按钮上时,我将它们突出显示为黄色,就像Microsoft办公产品一样,但我不希望它显示按钮边框。我见过人们提到FlatStyle或FlatAppearance,但似乎没有认出那些命令。我现在正在研究渲染,但我是C#的新手,我确信必须有一个简单的方法来做到这一点,如果可能的话,我不想花很多时间。

我必须强调,我一直在阅读关于Windows窗体编程的书籍,并没有找到任何答案,而不是我很懒,但我经常觉得这是一个很好的输入源。

试过这个:

this.TSVehicleButton.BorderStyle = None;

试过这个:

this.TSVehicleButton.System.Windows.Forms.BorderStyle = None;

我尝试了很多东西,但没有提到它作为我的问题的一部分,我是C#的新手并且不想让人觉得这很愚蠢。当人们把他们尝试过的东西放得不对时,人们会有点讨厌。

5 个答案:

答案 0 :(得分:2)

使用以下

public class CustomButton : Button
{
    public CustomButton()
        : base()
    {
        // Prevent the button from drawing its own border
        FlatAppearance.BorderSize = 0;
        FlatStyle = System.Windows.Forms.FlatStyle.Flat;
    }

    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);

        // Draw Border using color specified in Flat Appearance
        Pen pen = new Pen(FlatAppearance.BorderColor, 1);
        Rectangle rectangle = new Rectangle(0, 0, Size.Width - 1, Size.Height - 1);
        e.Graphics.DrawRectangle(pen, rectangle);
    }
}

我可能会帮助你。

答案 1 :(得分:2)

只需使用this.FlatStyle = FlatStyle.Flat;

答案 2 :(得分:2)

只需设置以下Button属性,例如在设计时在属性窗口中设置:

FlatStyle=Flat
FlatAppearance.BorderSize=0

或者运行以下代码,例如,对于名为button1的按钮:

button1.FlatStyle=True
button1.FlatAppearance.BorderSize=0

答案 3 :(得分:0)

有一种方法可以使边框远离按钮及其在按钮属性中。 首先确保您已单击该按钮,以便属性属于该按钮。 在属性窗格上,找到Flat Appearance并通过单击它前面的+号展开它。 这将为您打开更多选项,其中一个选项是边框大小设置为1,将其更改为0, 接下来,下面有3行,有一个名为FlatStyle的属性,它设置为标准,需要将其更改为Flat。 Flat 完成工作!

希望这有帮助

答案 4 :(得分:0)

这对我来说非常合适,而且非常简单!

SelectedSession.SelectedExercise

现在按钮没有边框,即使您进入光标也是如此。这在Visual Studio 2015上完美运行。