winforms界面小技巧1

简介: winforms界面小技巧1

1、去掉button的边框线:设置FlatStyle=Flat,以及FlatAppearance的BorderSize=0


2、重绘groupbox的边界线


private void groupBox1_Paint(object sender, PaintEventArgs e)
{
     e.Graphics.Clear(groupBox1.BackColor);
     e.Graphics.DrawString(groupBox1.Text, groupBox1.Font, Brushes.Black, 10, 1);
     e.Graphics.DrawLine(Pens.Black, 1, 7, 8, 7);
     e.Graphics.DrawLine(Pens.Black, e.Graphics.MeasureString(groupBox1.Text, groupBox1.Font).Width + 8, 7, groupBox1.Width - 2, 7);
     e.Graphics.DrawLine(Pens.Black, 1, 7, 1, groupBox1.Height - 2);
     e.Graphics.DrawLine(Pens.Black, 1, groupBox1.Height - 2, groupBox1.Width - 2, groupBox1.Height - 2);
     e.Graphics.DrawLine(Pens.Black, groupBox1.Width - 2, groupBox1.Height - 2, groupBox1.Width - 2, 7);
}

3、重回渐变背景

private void tableLayoutPanel1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            Color FColor = System.Drawing.Color.FromArgb(((int)(((byte)(184)))), ((int)(((byte)(147)))), ((int)(((byte)(201)))));
            Color TColor = System.Drawing.Color.FromArgb(((int)(((byte)(84)))), ((int)(((byte)(42)))), ((int)(((byte)(113)))));
            Brush b = new LinearGradientBrush(this.tableLayoutPanel1.ClientRectangle, FColor, TColor, LinearGradientMode.Vertical);// .ForwardDiagonal);
            g.FillRectangle(b, this.tableLayoutPanel1.ClientRectangle);
        }
        private void btn_status_Paint(object sender, PaintEventArgs e)
        {
            Bitmap backimg = new Bitmap(btn_status.Width, btn_status.Height);
            Graphics g = Graphics.FromImage(backimg); ;
            Color FColor = System.Drawing.Color.Lavender;
            Color TColor = System.Drawing.Color.FromArgb(((int)(((byte)(184)))), ((int)(((byte)(147)))), ((int)(((byte)(201)))));
            Brush b = new LinearGradientBrush(this.btn_status.ClientRectangle, FColor, TColor, LinearGradientMode.Vertical);// .ForwardDiagonal);
            g.FillRectangle(b, this.btn_status.ClientRectangle);
            btn_status.BackgroundImage = backimg;
            //Graphics g = e.Graphics;
            //LinearGradientBrush myBrush = new LinearGradientBrush(this.btn_status.ClientRectangle, Color.White, Color.Blue, LinearGradientMode.Vertical);
            //g.FillRectangle(myBrush, this.btn_status.ClientRectangle);
        }

4、更改listview的某个cell的背景,并消除横向滑动条


ListViewItem item = new ListViewItem();
item.SubItems[0].Text = DateTime.Now.ToString("yyyy-MM-dd hh:MM:ss");
item.SubItems.Add(attention[i]);
item.UseItemStyleForSubItems = false;
item.SubItems[1].BackColor = Color.CornflowerBlue;
listView1.Items.Add(item);
// 第一列宽度 + 第二列宽度 = 工作区宽度
listView1.Columns[1].Width = listView1.ClientSize.Width - listView1.Columns[0].Width;



 


相关文章
|
16天前
|
数据安全/隐私保护 图形学
基于 LVGL 使用 SquareLine Studio 快速设计 UI 界面
基于 LVGL 使用 SquareLine Studio 快速设计 UI 界面
|
10月前
|
C++
Visual Studio Winform窗体控件Menustrip
Visual Studio Winform窗体控件Menustrip
130 0
|
C# Windows
使用WPF技术模拟手机界面
原文:使用WPF技术模拟手机界面 1. 前言 WPF(Windows Presentation Foundation),即“Windows呈现基础”,它的目的非常明确,就是用来把数据“显示”给用户看的(说白了就是用来做UI的)。
1575 0
|
C#
在VisualStudio 工具箱中隐藏用户控件
原文:在VisualStudio 工具箱中隐藏用户控件 当我们创建一个用户控件后,VisualStudio会自动将其添加到工具箱中,本来这是一个比较贴心的设计。但是,有的时候,我们并不想将用户控件放到工具箱中。
888 0
|
BI C#
Visual Studio 2017报表RDLC设计器与工具箱中Report Viewer问题
原文:VS2017入门 RDLC入门之01 本系列所有内容为网络收集转载,版权为原作者所有。 VS2017初始安装后和VS2015一样,都没有ReportDesigner/ReportViewer ReportViewer 1.
6509 0
|
供应链 数据可视化 UED