成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺析C# WinForm控件開發前期準備

開發 后端
C# WinForm控件開發是我們在C#使用過程中的一個階段,那么掌握C# WinForm控件開發之前需要明白什么呢?C# WinForm控件開發都有什么可以實現呢?那么本文就向你詳細介紹。

對于C# WinForm控件開發,MSDN上提供了很多使用的方法,那么這里就向你介紹對于C# WinForm控件開發的基本了解內容,C#開發WinForm控件的類型以及各自的特點。

C# WinForm控件開發的伊始:

其實C#開發WinForm控件并不是很復雜,.NET為我們提供了豐富的底層支持。如果你有MFC或者API圖形界面的開發經驗,那么學會WinForm控件可能只需要很短的時間就夠了。

自己開發的WinForm控件通常有三種類型:復合控件(Composite Controls),擴展控件(Extended Controls),自定義控件(Custom Controls)。

◆復合控件:將現有的各種控件組合起來,形成一個新的控件,將集中控件的功能集中起來。

◆擴展控件:在現有控件的控件的基礎上派生出一個新的控件,為原有控件增加新的功能或者修改原有控件的控能。

◆自定義控件:直接從System.Windows.Forms.Control類派生出來。Control類提供控件所需要的所有基本功能,包括鍵盤和鼠標的事件處理。自定義控件是最靈活最強大的方法,但是對開發者的要求也比較高,你必須為Control類的OnPaint事件寫代碼,你也可以重寫Control類的WndProc方法,處理更底層的Windows消息,所以你應該了解GDI+和Windows API。

C# WinForm控件開發之控件(可視化的)的基本特征:

1. 可視化。

2. 可以與用戶進行交互,比如通過鍵盤和鼠標。

3. 暴露出一組屬性和方法供開發人員使用。

4. 暴露出一組事件供開發人員使用。

5. 控件屬性的可持久化。

6. 可發布和可重用。

這些特征是我自己總結出來,不一定準確,或者還有遺漏,但是基本上概括了控件的主要方面。

接下來我們做一個簡單的控件來增強一下感性認識。首先啟動VS2005創建一個ClassLibrary工程,命名為CustomControlSample,VS會自動為我們創建一個solution與這個工程同名,然后刪掉自動生成的Class1.cs文件,最后在Solution explorer里右鍵點擊CustomControlSample工程選擇Add->Classes…添加一個新類,將文件的名稱命名為FirstControl。下邊是代碼:

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Text;  
  4. using System.Windows.Forms;  
  5. using System.ComponentModel;  
  6. using System.Drawing;  
  7.  
  8. namespace CustomControlSample  
  9. {  
  10. public class FirstControl : Control  
  11. {  
  12.  
  13. public FirstControl()  
  14. {  
  15.  
  16. }  
  17.  
  18. // ContentAlignment is an enumeration defined in the System.Drawing  
  19. // namespace that specifies the alignment of content on a drawing   
  20. // surface.  
  21. private ContentAlignment alignmentValue = ContentAlignment.MiddleLeft;  
  22.  
  23. [  
  24. Category("Alignment"),  
  25. Description("Specifies the alignment of text.")  
  26. ]  
  27. public ContentAlignment TextAlignment  
  28. {  
  29.  
  30. get 
  31. {  
  32. return alignmentValue;  
  33. }  
  34. set 
  35. {  
  36. alignmentValue = value;  
  37.  
  38. // The Invalidate method invokes the OnPaint method described   
  39. // in step 3.  
  40. Invalidate();  
  41. }  
  42. }  
  43.  
  44.  
  45. protected override void OnPaint(PaintEventArgs e)  
  46. {  
  47. base.OnPaint(e);  
  48. StringFormat style = new StringFormat();  
  49. style.Alignment = StringAlignment.Near;  
  50. switch (alignmentValue)  
  51. {  
  52. case ContentAlignment.MiddleLeft:  
  53. style.Alignment = StringAlignment.Near;  
  54. break;  
  55. case ContentAlignment.MiddleRight:  
  56. style.Alignment = StringAlignment.Far;  
  57. break;  
  58. case ContentAlignment.MiddleCenter:  
  59. style.Alignment = StringAlignment.Center;  
  60. break;  
  61. }  
  62.  
  63. // Call the DrawString method of the System.Drawing class to write   
  64. // text. Text and ClientRectangle are properties inherited from  
  65. // Control.  
  66. e.Graphics.DrawString(  
  67. Text,  
  68. Font,  
  69. new SolidBrush(ForeColor),  
  70. ClientRectangle, style);  
  71.  
  72. }  
  73. }  
  74. }  

C# WinForm控件開發的基本前期需要了解的內容就向你介紹到這里,希望對你進行C# WinForm控件開發有所幫助。

【編輯推薦】

  1. C# XML編程刪除XML文件內容操作詳解
  2. 淺談C# 加密中MD5和SHA1加密實現
  3. 簡析散列算法在C# 加密中的應用
  4. RSA實現C# 加密詳解
  5. 詳解TripleDES實現C# 加密操作
責任編輯:仲衡 來源: 百度空間
相關推薦

2009-09-03 17:49:59

C#瀏覽器開發

2009-09-11 11:33:58

C# WinForm控Attribute

2009-08-11 14:45:41

C# DataGrid

2009-09-04 17:58:38

C# Web Brow

2009-08-06 16:58:40

C#編寫ActiveX

2009-08-12 10:35:50

C#調用ActiveX

2009-08-28 15:05:35

C#編寫Calenda

2009-08-20 09:30:03

C#開發WinForm

2009-08-20 10:24:52

C#開發WinForm

2009-08-17 15:48:47

C# WinForm進

2009-09-01 10:59:22

C#項目

2009-09-11 12:31:15

C# WinForm控設置默認值

2009-09-11 12:07:12

C# WinForm控

2009-08-26 13:36:33

C#打印控件

2009-09-09 10:47:29

C# CheckBox

2009-08-24 09:55:24

C#集成開發環境

2009-08-28 16:31:21

C# treeview

2009-09-08 14:54:40

C# listBox控

2009-08-24 10:10:09

C#復合控件

2009-10-10 14:54:44

treeView1控件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产美女视频黄a视频免费 国产精品福利视频 | 成在线人视频免费视频 | 日韩成人在线免费视频 | 日日天天 | 日本五月婷婷 | 亚洲一区二区日韩 | 国产精品美女视频 | 欧美激情视频一区二区三区在线播放 | 久久精品| 久久精品成人 | 欧美日韩国产一区二区三区 | 亚洲一区二区精品视频 | 91精品久久久久久久久 | 久久久久国产精品一区二区 | 日韩视频精品在线 | av在线电影网站 | 日韩在线观看中文字幕 | 久久免费高清视频 | 天堂成人国产精品一区 | 日韩成人在线观看 | 97精品超碰一区二区三区 | 日本午夜在线视频 | 免费在线国产视频 | av在线电影网站 | 国产精品久久久久久久久久妇女 | av福利网站 | 澳门永久av免费网站 | 色综久久 | 成人在线亚洲 | 亚洲精品一区中文字幕乱码 | 国产精品成人一区二区 | 永久av| 欧美电影免费观看 | 欧美一区二区三区在线 | 天堂色 | 91久久精品日日躁夜夜躁国产 | а_天堂中文最新版地址 | 亚洲精品9999 | 综合二区| 免费二区| 精产国产伦理一二三区 |