转---《C#画线控件的开发应用实例解析》
2011-11-17 12:55
363 查看
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#画线控件的开发就向你介绍到这里,希望对你了解和学习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#画线控件的开发就向你介绍到这里,希望对你了解和学习C#画线控件有所帮助
相关文章推荐
- C#画线控件的开发应用实例解析
- 深入理解Struts 1.1及应用开发实例解析
- Linux 设备驱动开发 —— platform设备驱动应用实例解析
- Linux 设备驱动开发 —— platform设备驱动应用实例解析
- Linux 设备驱动开发 — platform设备驱动应用实例解析
- iOS应用开发中运用设计模式中的组合模式的实例解析
- 实例解析iOS中音乐播放器应用开发的基本要点
- 深入理解Struts 2.1及应用开发实例解析
- 实例解析iOS应用多线程开发中NSthread类的用法
- 实例解析iOS开发中系统音效以及自定义音效的应用
- iOS多线程应用开发中自定义NSOperation类的实例解析
- Linux 设备驱动开发 —— platform设备驱动应用实例解析
- Linux 设备驱动开发 —— platform设备驱动应用实例解析
- iOS应用开发中运用设计模式中的组合模式的实例解析
- Windows 7 虚拟磁盘(VHD)应用实例解析
- Spring+SpringMVC+Mybatis(SSM)框架搭建教程(四)-应用功能开发实例
- 关键词:用JAVA开发CORBA应用实例
- 【Android 应用开发】Android屏幕适配解析 - 详解像素,设备独立像素,归一化密度,精确密度及各种资源对应的尺寸密度分辨率适配问题
- 深入解析iOS应用开发中对设计模式中的桥接模式的使用
- 织梦dedecms插件之在线报名开发实例解析,插件开发教程