学习C#自定义用户控件

开发 后端
本例是制作一个简单的C#自定义控件,然后用一个简单的测试程序,对于初学者来说,本例子比较简单,只能起到抛石引玉的效果。

C#自定义用户控件制作

***步:新建一个控件库项目:myControl

控件库项目:myControl 

第二步:从工具箱里面拖动1个PictureBox、1个Button、6个Lable控件到用户界面上,布局如下:

布局 

如上图,设置pictureBox的Name为picBox,背景为白色,Button的Name为btnOpen,另外靠左的三个Lable的Text属性分别为:文件名称,文件大小,文件尺寸,靠右的三个Lable的Name分别为:lblName, lblLength, lblSize.

第三步:添加处理程序代码

在btnOpen的Click事件写入代码,打开一个打开文件对话框,选择一个图形文件,打开并将它显示在picBox上。

  1. private void btnOpen_Click(object sender, EventArgs e)  
  2. {  
  3. OpenFileDialog ofdPic = new OpenFileDialog();  
  4. ofdPic.Filter = "JPG(*.JPG;*.JPEG);gif文件(*.GIF)|*.jpg;*.jpeg;*.gif";  
  5. ofdPic.FilterIndex = 1;  
  6. ofdPic.RestoreDirectory = true;  
  7. ofdPic.FileName = "";  
  8. if (ofdPic.ShowDialog() == DialogResult.OK)  
  9. {  
  10. string sPicPaht = ofdPic.FileName.ToString();  
  11. FileInfo fiPicInfo = new FileInfo(sPicPaht);  
  12. long lPicLong = fiPicInfo.Length / 1024;  
  13. string sPicName = fiPicInfo.Name;  
  14. string sPicDirectory = fiPicInfo.Directory.ToString();  
  15. string sPicDirectoryPath = fiPicInfo.DirectoryName;  
  16. Bitmap bmPic = new Bitmap(sPicPaht);  
  17. if (lPicLong > 400)  
  18. {  
  19. MessageBox.Show("此文件大小為" + lPicLong + "K;已超過***限制的K范圍!");  
  20. }  
  21. else 
  22. {  
  23. Point ptLoction = new Point(bmPic.Size);  
  24. if (ptLoction.X > picBox.Size.Width || ptLoction.Y > picBox.Size.Height)  
  25. {  
  26. picBox.SizeMode = PictureBoxSizeMode.Zoom;  
  27. }  
  28. else 
  29. {  
  30. picBox.SizeMode = PictureBoxSizeMode.CenterImage;  
  31. }  
  32. }  
  33. picBox.LoadAsync(sPicPaht);  
  34. lblName.Text = sPicName;  
  35. lblLength.Text = lPicLong.ToString() + " KB";  
  36. lblSize.Text = bmPic.Size.Width.ToString() + "×" + bmPic.Size.Height.ToString();  
  37. }  
  38. }  

第四步:测试C#自定义用户控件

按F5启动调试,弹出如下窗体:

按F5启动调试,弹出如下窗体 

单击“打开”按钮,弹出打开文件对话框:

选择一张图片,单击“打开”,可以看到在picBox上显示了打开的图片:

在picBox上显示了打开的图片 

第五步:查看成生的控件文件,到该项目文件目录下的bin->debug中可找到。

C#自定义用户控件测试

***步:新建一个C# Windows 应用程序,名为TestMyButton.

第二步:增加自定义的用户控件

右键单击工具箱中任意一个控件,弹出右键菜单如下:

新建一个C# Windows 应用程序 

 

单击“选择项”,弹出如下对话框:

弹出右键菜单 

单击“浏览”,弹出打开对话框:

单击“选择项”,弹出如下对话框 

选中控件文件 mybutton.dll ,单击“打开”按钮,回到自定义工具箱,系统会默认把你刚才选中的控件打上勾。

单击“浏览”,弹出打开对话框: 

返回vs编辑器,可看到工具箱中多出了一个UserControl:

工具箱中多出了一个UserControl 

第三步:拖动1个自定义的控件到测试窗口

拖动1个自定义的控件到测试窗口 

第四步 测试程序

测试程序 

单击“打开”按钮:

单击“打开”按钮 

选择一个图片,打开,显示该图:

选择一个图片,打开,显示该图  

至此,C#自定义用户控件测试成功。

【编辑推荐】

  1. 浅谈C#中构造函数和成员函数
  2. C#函数的参数返回结构数组
  3. 概述ASP.NET中的NGWS Runtime
  4. C#函数与JavaScript函数
  5. 详解C# Object.Equals函数
责任编辑:book05 来源: csdn
相关推荐

2009-08-03 13:34:06

自定义C#控件

2009-08-05 17:03:37

C#自定义控件

2021-06-17 06:52:37

C#自定义异常

2009-08-03 14:46:12

C#自定义控件

2009-08-04 13:23:40

C# 自定义控件dll

2009-09-11 11:04:23

C# WinForm自

2009-08-04 08:58:01

C#自定义特性

2009-09-03 15:46:57

C#自定义事件

2009-08-03 14:42:50

C#自定义控件

2009-08-28 17:45:19

C#自定义数据

2009-06-08 20:13:36

Eclipse自定义控

2009-08-04 09:56:46

C#事件处理自定义事件

2009-08-04 12:56:51

C#自定义事件

2009-08-03 13:32:38

C#自定义组件

2013-04-19 10:14:24

2009-08-12 14:53:50

C#类型转换函数

2009-08-04 12:40:34

c#自定义事件

2009-08-04 09:09:51

C#反射

2009-08-04 13:31:35

C#自定义事件

2017-02-17 09:37:12

Android自定义控件方法总结
点赞
收藏

51CTO技术栈公众号