2004.7.15 [C#学习记录]使用C#编写一个自定义控件(高

来源:互联网 发布:淘宝超级会员大红包 编辑:程序博客网 时间:2024/06/03 20:23
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Data;using System.Windows.Forms;namespace WindowsControlLibrary1{/// /// UserControl1 的摘要说明。/// public class UserControl1 : System.Windows.Forms.UserControl{/// /// 必需的设计器变量。/// private System.ComponentModel.Container components = null;/// 私有域private string MyText;//存储关联的事件处理方法;private EventHandler OnMyTextChanged;public UserControl1(){// 该调用是 Windows.Forms 窗体设计器所必需的。InitializeComponent();// TODO: 在 InitializeComponent 调用后添加任何初始化MyText="Static Control";OnMyTextChanged=null;}/// /// 清理所有正在使用的资源。/// protected override void Dispose( bool disposing ){if( disposing ){if( components != null )components.Dispose();}base.Dispose( disposing );}#region Component Designer generated code/// /// 设计器支持所需的方法 - 不要使用代码编辑器 /// 修改此方法的内容。/// private void InitializeComponent(){// // UserControl1// this.Name = "UserControl1";this.Size = new System.Drawing.Size(248, 128);this.Load += new System.EventHandler(this.UserControl1_Load);this.Paint += new System.Windows.Forms.PaintEventHandler(this.UserControl1_Paint);}#endregionprivate void UserControl1_Paint(object sender, System.Windows.Forms.PaintEventArgs e){SizeF textSize=e.Graphics.MeasureString(MyText,Font);float xPos=(ClientRectangle.Width/2)-(textSize.Width/2);float yPos=(ClientRectangle.Height/2)-(textSize.Height/2);e.Graphics.DrawString(MyText,Font,new SolidBrush(Color.Black),xPos,yPos);}private void UserControl1_Load(object sender, System.EventArgs e){}//公开属性public String ControlText{get{return MyText;}set{MyText=value;//重画Invalidate();//如果关联了事件处理方法,则调用该方法if(OnMyTextChanged!=null){OnMyTextChanged.Invoke(this,EventArgs.Empty);}}}//声明了一个公开事件public event EventHandler MyTextChanged{add{OnMyTextChanged+=value;}remove{OnMyTextChanged=value;}}}}<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击