C#画线控件的开发应用实例解析

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

创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括成都网站建设、网站建设、电商网站开发、微信营销、系统平台开发。

C#画线控件之横线

 
 
 
  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Windows.Forms;
  7. namespace Jiashi.WinControls
  8. {
  9.  /// 
  10.  /// LineX 画横线控件
  11.  /// 
  12.  public class LineX : System.Windows.Forms.UserControl
  13.  {
  14. #region 属性定义
  15. private System.Drawing.Color lineColor;
  16. private int lineWidth;
  17. /// 
  18. /// 线的颜色属性
  19. /// 
  20. public System.Drawing.Color LineColor
  21. {
  22.  set
  23.  {
  24. this.lineColor=value;
  25. System.Windows.Forms.PaintEventArgs ep=
  26. new PaintEventArgs(this.CreateGraphics(),
  27. this.ClientRectangle);
  28. this.LineX_Paint(this,ep);
  29.  }
  30.  get{return this.lineColor;}
  31. }
  32. /// 
  33. /// 线的粗细
  34. /// 
  35. public int LineWidth
  36. {
  37.  set
  38.  {
  39. this.lineWidth=value;
  40. System.Windows.Forms.PaintEventArgs ep=
  41. new PaintEventArgs(this.CreateGraphics(),
  42. this.ClientRectangle);
  43. this.LineX_Paint(this,ep);
  44.  }
  45.  get{return this.lineWidth;}
  46. }
  47. #endregion
  48. private System.ComponentModel.Container components = null;
  49. /// 
  50. /// 构造函数初始颜色和线粗细
  51. /// 
  52. public LineX()
  53. {
  54.  InitializeComponent();
  55.  this.lineColor=this.ForeColor;
  56.  this.lineWidth=1;
  57. }
  58. /// 
  59. /// 清理所有正在使用的资源。
  60. /// 
  61. protected override void Dispose( bool disposing )
  62. {
  63.  if( disposing )
  64.  {
  65. if(components != null)
  66. {
  67.  components.Dispose();
  68. }
  69.  }
  70.  base.Dispose( disposing );
  71. }
  72. #region 组件设计器生成的代码
  73. /// 
  74. /// 设计器支持所需的方法 - 不要使用代码编辑器 
  75. /// 修改此方法的内容。
  76. /// 
  77. private void InitializeComponent()
  78. {
  79.  // 
  80.  // LineX
  81.  // 
  82.  this.Name = "LineX";
  83.  this.Resize += new System.EventHandler(this.LineX_Resize);
  84.  this.Paint += 
  85. new System.Windows.Forms.PaintEventHandler(this.LineX_Paint);
  86. }
  87. #endregion
  88. private void LineX_Paint(object sender,
  89.  System.Windows.Forms.PaintEventArgs e)
  90. {
  91.  Graphics g=e.Graphics;
  92.  Pen myPen = new Pen(this.lineColor);
  93.  myPen.Width=this.lineWidth*2;
  94.  this.Height=this.LineWidth;
  95.  g.DrawLine(myPen,0,0,e.ClipRectangle.Right,0);
  96. }
  97. private void LineX_Resize(object sender, System.EventArgs e)
  98. {
  99.  this.Height=this.lineWidth;
  100. }
  101.  }
  102. }

C#画线控件之竖线

 
 
 
  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Windows.Forms;
  7. namespace Jiashi.WinControls
  8. {
  9.  /// 
  10.  /// LineY 画竖线控件
  11.  /// 
  12.  public class LineY : System.Windows.Forms.UserControl
  13.  {
  14. #region 属性定义
  15. private System.Drawing.Color lineColor;
  16. private int lineWidth;
  17. /// 
  18. /// 线的颜色属性
  19. /// 
  20. public System.Drawing.Color LineColor
  21. {
  22.  set
  23.  {
  24. this.lineColor=value;
  25. System.Windows.Forms.PaintEventArgs ep=
  26. new PaintEventArgs(this.CreateGraphics(),
  27. this.ClientRectangle);
  28. this.LineY_Paint(this,ep);
  29.  }
  30.  get{return this.lineColor;}
  31. }
  32. /// 
  33. /// 线的粗细
  34. /// 
  35. public int LineWidth
  36. {
  37.  set
  38.  {
  39. this.lineWidth=value;
  40. System.Windows.Forms.PaintEventArgs ep=
  41. new PaintEventArgs(this.CreateGraphics(),
  42. this.ClientRectangle);
  43. this.LineY_Paint(this,ep);
  44.  }
  45.  get{return this.lineWidth;}
  46. }
  47. #endregion
  48. private System.ComponentModel.Container components = null;
  49. /// 
  50. /// 构造函数初始颜色和线粗细
  51. /// 
  52. public LineY()
  53. {
  54.  InitializeComponent();
  55.  this.lineColor=this.ForeColor;
  56.  this.lineWidth=1;
  57. }
  58. /// 
  59. /// 清理所有正在使用的资源。
  60. /// 
  61. protected override void Dispose( bool disposing )
  62. {
  63.  if( disposing )
  64.  {
  65. if(components != null)
  66. {
  67.  components.Dispose();
  68. }
  69.  }
  70.  base.Dispose( disposing );
  71. }
  72. #region 组件设计器生成的代码
  73. /// 
  74. /// 设计器支持所需的方法 - 不要使用代码编辑器 
  75. /// 修改此方法的内容。
  76. /// 
  77. private void InitializeComponent()
  78. {
  79.  // 
  80.  // LineY
  81.  // 
  82.  this.Name = "LineY";
  83.  this.Resize += 
  84. new System.EventHandler(this.LineY_Resize);
  85.  this.Paint += 
  86. new System.Windows.Forms.PaintEventHandler(this.LineY_Paint);
  87. }
  88. #endregion
  89. private void LineY_Paint(
  90. object sender, System.Windows.Forms.PaintEventArgs e)
  91. {
  92.  Graphics g=e.Graphics;
  93.  Pen myPen = new Pen(this.lineColor);
  94.  myPen.Width=this.lineWidth*2;
  95.  this.Width=this.LineWidth;
  96.  g.DrawLine(myPen,0,0,0,e.ClipRectangle.Bottom);
  97. }
  98. private void LineY_Resize(
  99. object sender, System.EventArgs e)
  100. {
  101.  this.Width=this.lineWidth;
  102. }
  103.  }
  104. }

C#画线控件的开发就向你介绍到这里,希望对你了解和学习C#画线控件有所帮助。

当前标题:C#画线控件的开发应用实例解析
文章路径:http://www.mswzjz.com/qtweb/news40/199740.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联