本文實例講述了C#自定義控件實現TextBox禁止粘貼的方法。分享給大家供大家參考,具體如下:
開發環境:Visual Studio .net 2005 + Windows XP sp2 professional
新建->項目->Windows控件庫: 新建一個類,繼承自TextBox類,具體源代碼如下:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing;using System.Data;using System.Text;using System.Windows.Forms;namespace TextBox_NoPaste{  [Description("繼承自TextBox,但加入了禁止粘貼功能")]  public partial class UC_TextBox_NoPaste : TextBox  {    public UC_TextBox_NoPaste()    {      InitializeComponent();    }    //重寫基本類的WndProc()    protected override void WndProc(ref Message m)    {      if (m.Msg == 0x0302) //0x0302是粘貼消息      {        m.Result = IntPtr.Zero; //攔截此消息        return;      }      base.WndProc(ref m); //若此消息不是粘貼消息,則交給其基類去處理    }  }}編譯此源代碼,就會生成一個.dll文件,如果其他項目中要用到此控件,只要先將它加至選項卡上,再往界面中拖一個出來就可以用了。
試試吧,繼承了TextBox的所有特性,增加了禁止粘貼功能。
同樣的方法還可以自定義出自己喜歡的控件,如只能輸入數字的控件。
更多關于C#相關內容感興趣的讀者可查看本站專題:《C#常見控件用法教程》、《C#窗體操作技巧匯總》、《C#數據結構與算法教程》、《C#面向對象程序設計入門教程》及《C#程序設計之線程使用技巧總結》
希望本文所述對大家C#程序設計有所幫助。
新聞熱點
疑難解答