c#中(winform)如何去掉button边框颜色?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中(winform)如何去掉button边框颜色?相关的知识,希望对你有一定的参考价值。

Winform的话,设置FlatStyle为Flat,并且设置FlatAppearance下的BorderSize为0

FlatStyle为Flat的话 就不是按钮的样子了

我设置了 ForeColor 为 red 按下后 button边框也是 red

如何设置 能不显示那个边框的颜色啊?

还有就是 按钮按下的时候 显示的感觉像是按下去的!

你可以用一个label分别在它的MouseMove,MouseDown,MouseUp事件里换不同的背景图,一般的特殊按钮都是这么做的而且很方便 参考技术A 1、先画出想要的button的图片(包括MouseDown状态时button的图片),
2、用picturebox添加到窗体,
3、再添加pictureBox1_MouseDown、pictureBox1_MouseUp事件就行了。
参考技术B Winform的话,设置FlatStyle为Flat,并且设置FlatAppearance下的BorderSize为0. 参考技术C 设置了又不显示!

C# Winform button控件的边框设置问题

有一个button控件,在使用皮肤的时候,会出现白色边框,想去掉白色的边框 ,如图.
该怎么设置啊?不想使用label控件

参考技术A 设置该控件的Region区域追问

Winform的button控件好像没有Region区域吧?

追答

给你个列子吧。你自己套用下看看效果如何

       

[DllImport("gdi32.dll")]
public static extern bool DeleteObject(IntPtr hObject);
[DllImport("gdi32.dll")]
public static extern IntPtr CreateRoundRectRgn(int x1, int y1, int x2, int y2, int cx, int cy);
    private void button2_Click(object sender, EventArgs e)
    
        Size Size = this.button1.Bounds.Size;
        IntPtr Rgn = CreateRoundRectRgn(1, 1, Size.Width, Size.Height, 6, 6);
        if (Rgn != null)
        
            SetWindowRgn(this.listView1.Handle, Rgn, true);
            DeleteObject(Rgn);
        
    
    //代码中的6中控件圆角值你可以改成和你控件实现圆角值。这样就可以了

本回答被提问者和网友采纳
参考技术B 必须重绘。

以上是关于c#中(winform)如何去掉button边框颜色?的主要内容,如果未能解决你的问题,请参考以下文章

C#中去掉winform边框如何拖动

winform中按钮的被点击时的边框如何去掉?

如何去掉c# winform里 tabcontrol控件的边框

C# WinForm如何让button的边框颜色不断变化

C#winform怎么样让去掉边框的button控件的四边是圆圆的

css中如何去掉button(按钮)的边框