C#画线控件的方法

发布时间:2021-06-16 14:40:01 作者:chen
来源:亿速云 阅读:938

这篇文章主要介绍“C#画线控件的方法”,在日常操作中,相信很多人在C#画线控件的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#画线控件的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

C#画线控件的应用实例介绍之前我们要明白在C#中没有画线的控件,这里写了一个,大家分享。共有两个控件分别是画横线和画竖线的,关于怎么画斜线我还没没有,有兴趣的可以做一个大家分享。

C#画线控件之横线

using System;  using System.Collections;  using System.ComponentModel;  using System.Drawing;  using System.Data;  using System.Windows.Forms;   namespace Jiashi.WinControls  {   ///    /// LineX 画横线控件   ///    public class LineX : System.Windows.Forms.UserControl   {   #region 属性定义  private System.Drawing.Color lineColor;  private int lineWidth;  ///   /// 线的颜色属性  ///   public System.Drawing.Color LineColor  {   set  {  this.lineColor=value;  System.Windows.Forms.PaintEventArgs ep=  new PaintEventArgs(this.CreateGraphics(),  this.ClientRectangle);  this.LineX_Paint(this,ep);   }   get{return this.lineColor;}  }  ///   /// 线的粗细  ///   public int LineWidth  {   set  {  this.lineWidth=value;  System.Windows.Forms.PaintEventArgs ep=  new PaintEventArgs(this.CreateGraphics(),  this.ClientRectangle);  this.LineX_Paint(this,ep);   }   get{return this.lineWidth;}  }  #endregion  private System.ComponentModel.Container components = null;   ///   /// 构造函数初始颜色和线粗细  ///   public LineX()  {   InitializeComponent();   this.lineColor=this.ForeColor;   this.lineWidth=1;   }   ///   /// 清理所有正在使用的资源。  ///   protected override void Dispose( bool disposing )  {   if( disposing )   {  if(components != null)  {   components.Dispose();  }   }   base.Dispose( disposing );  }   #region 组件设计器生成的代码  ///   /// 设计器支持所需的方法 - 不要使用代码编辑器   /// 修改此方法的内容。  ///   private void InitializeComponent()  {   //    // LineX   //    this.Name = "LineX";   this.Resize += new System.EventHandler(this.LineX_Resize);   this.Paint +=   new System.Windows.Forms.PaintEventHandler(this.LineX_Paint);   }  #endregion   private void LineX_Paint(object sender,   System.Windows.Forms.PaintEventArgs e)  {   Graphics g=e.Graphics;   Pen myPen = new Pen(this.lineColor);   myPen.Width=this.lineWidth*2;   this.Height=this.LineWidth;   g.DrawLine(myPen,0,0,e.ClipRectangle.Right,0);  }   private void LineX_Resize(object sender, System.EventArgs e)  {   this.Height=this.lineWidth;  }   }  }

C#画线控件之竖线

using System;  using System.Collections;  using System.ComponentModel;  using System.Drawing;  using System.Data;  using System.Windows.Forms;   namespace Jiashi.WinControls  {   ///    /// LineY 画竖线控件   ///    public class LineY : System.Windows.Forms.UserControl   {   #region 属性定义  private System.Drawing.Color lineColor;  private int lineWidth;  ///   /// 线的颜色属性  ///   public System.Drawing.Color LineColor  {   set  {  this.lineColor=value;  System.Windows.Forms.PaintEventArgs ep=  new PaintEventArgs(this.CreateGraphics(),  this.ClientRectangle);  this.LineY_Paint(this,ep);   }   get{return this.lineColor;}  }  ///   /// 线的粗细  ///   public int LineWidth  {   set  {  this.lineWidth=value;  System.Windows.Forms.PaintEventArgs ep=  new PaintEventArgs(this.CreateGraphics(),  this.ClientRectangle);  this.LineY_Paint(this,ep);   }   get{return this.lineWidth;}  }  #endregion  private System.ComponentModel.Container components = null;   ///   /// 构造函数初始颜色和线粗细  ///   public LineY()  {   InitializeComponent();   this.lineColor=this.ForeColor;   this.lineWidth=1;   }   ///   /// 清理所有正在使用的资源。  ///   protected override void Dispose( bool disposing )  {   if( disposing )   {  if(components != null)  {   components.Dispose();  }   }   base.Dispose( disposing );  }   #region 组件设计器生成的代码  ///   /// 设计器支持所需的方法 - 不要使用代码编辑器   /// 修改此方法的内容。  ///   private void InitializeComponent()  {   //    // LineY   //    this.Name = "LineY";   this.Resize +=   new System.EventHandler(this.LineY_Resize);   this.Paint +=   new System.Windows.Forms.PaintEventHandler(this.LineY_Paint);   }  #endregion   private void LineY_Paint(  object sender, System.Windows.Forms.PaintEventArgs e)  {   Graphics g=e.Graphics;   Pen myPen = new Pen(this.lineColor);   myPen.Width=this.lineWidth*2;   this.Width=this.LineWidth;   g.DrawLine(myPen,0,0,0,e.ClipRectangle.Bottom);  }   private void LineY_Resize(  object sender, System.EventArgs e)  {   this.Width=this.lineWidth;  }   }  }

到此,关于“C#画线控件的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. C#控件-显示边框的DataGridViewColumn
  2. C# 中datagridview控件的使用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:C++中怎么实现一个IP地址类

下一篇:如何判断链表是否包含环

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》