這篇文章主要介紹了C#自訂控制項實現TextBox禁止粘貼的方法,結合具體執行個體形式分析了C#自訂控制項的建立、使用方法及TextBox禁止粘貼的實現技巧,需要的朋友可以參考下
本文執行個體講述了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的所有特性,增加了禁止粘貼功能。
同樣的方法還可以自訂出自己喜歡的控制項,如只能輸入數位控制項。