發布時間:2020-09-08 15:51 作者:獨孤劍 閱讀:2833
using System; using System.Windows.Forms; namespace DemoWinForm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } } /// <summary> /// 文本框 - 只能輸入整型且第一位不能是0 /// 禁止粘貼 /// </summary> public class TextBoxExInt : TextBox { /// <summary> /// 構造函數 /// </summary> public TextBoxExInt() { } #region 禁止粘貼 /// <summary> /// 重寫基類的WndProc方法 /// </summary> /// <param name="m"></param> protected override void WndProc(ref Message m) { if (m.Msg == 0x0302) // 0x0302是粘貼消息 { m.Result = IntPtr.Zero; // 攔截此消息 return; } base.WndProc(ref m); // 若此消息不是粘貼消息,則交給其基類去處理 } #endregion #region 重寫方法 /// <summary> /// 重寫方法 /// 只能輸入整型 /// </summary> /// <param name="e"></param> protected override void OnKeyPress(KeyPressEventArgs e) { base.OnKeyPress(e); if (e.KeyChar != '\b')// 允許輸入退格鍵 { // 最多8位數金額 if (this.Text.Length == 8) { e.Handled = true; } // 整型第一個不能輸入0 if (this.TextLength == 0) { if (e.KeyChar == '0') { e.Handled = true; ; } } // 只允許輸入0-9數字 if ((e.KeyChar < '0') || (e.KeyChar > '9')) { e.Handled = true; } } } #endregion } }
拖拽“TextBoxExInt”的自定義控件到窗體
微信打賞, 微信掃一掃
支付寶打賞, 支付寶掃一掃
如果文章對您有幫助,歡迎給作者打賞