一个数字键盘的自定义控件[原创]

效果图如下:

代码如下:

  1public partial class mycontrol_ : UserControl
  2    {
  3        public mycontrol_()
  4        {
  5            InitializeComponent();
  6        }

  7        public event EventHandler KeyOneClicked;
  8
  9        private string currentKey;
 10        public string CurrentKey
 11        {
 12            set { currentKey = value; }
 13            get return currentKey; }           
 14        }

 15        private void btnNumberkkk_Click(object sender, EventArgs e)
 16        {
 17            if (KeyOneClicked != null)
 18            {
 19                string delimStr = ":";
 20                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 21                currentKey = msg[1];
 22                KeyOneClicked(this, e);
 23            }

 24        }

 25        private void btnNumber1_Click(object sender, EventArgs e)
 26        {
 27            if (KeyOneClicked != null)
 28            {
 29                string delimStr = ":";
 30                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 31                currentKey = msg[1];
 32                KeyOneClicked(this, e);
 33            }

 34        }

 35        private void btnNumber2_Click(object sender, EventArgs e)
 36        {
 37            if (KeyOneClicked != null)
 38            {
 39                string delimStr = ":";
 40                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 41                currentKey = msg[1];
 42                KeyOneClicked(this, e);
 43            }

 44        }

 45        private void btnNumber3_Click(object sender, EventArgs e)
 46        {
 47            if (KeyOneClicked != null)
 48            {
 49                string delimStr = ":";
 50                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 51                currentKey = msg[1];
 52                KeyOneClicked(this, e);
 53            }

 54        }

 55        private void btnNumber4_Click(object sender, EventArgs e)
 56        {
 57            if (KeyOneClicked != null)
 58            {
 59                string delimStr = ":";
 60                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 61                currentKey = msg[1];
 62                KeyOneClicked(this, e);
 63            }

 64        }

 65        private void btnNumber5_Click(object sender, EventArgs e)
 66        {
 67            if (KeyOneClicked != null)
 68            {
 69                string delimStr = ":";
 70                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 71                currentKey = msg[1];
 72                KeyOneClicked(this, e);
 73            }

 74        }

 75        private void btnNumber6_Click(object sender, EventArgs e)
 76        {
 77            if (KeyOneClicked != null)
 78            {
 79                string delimStr = ":";
 80                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 81                currentKey = msg[1];
 82                KeyOneClicked(this, e);
 83            }

 84        }

 85        private void btnNumber7_Click(object sender, EventArgs e)
 86        {
 87            if (KeyOneClicked != null)
 88            {
 89                string delimStr = ":";
 90                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
 91                currentKey = msg[1];
 92                KeyOneClicked(this, e);
 93            }

 94        }

 95        private void btnNumber8_Click(object sender, EventArgs e)
 96        {
 97            if (KeyOneClicked != null)
 98            {
 99                string delimStr = ":";
100                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
101                currentKey = msg[1];
102                KeyOneClicked(this, e);
103            }

104        }

105        private void btnNumber9_Click(object sender, EventArgs e)
106        {
107            if (KeyOneClicked != null)
108            {
109                string delimStr = ":";
110                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
111                currentKey = msg[1];
112                KeyOneClicked(this, e);
113            }

114        }

115        private void btnNumber0_Click(object sender, EventArgs e)
116        {
117            if (KeyOneClicked != null)
118            {
119                string delimStr = ":";
120                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
121                currentKey = msg[1];
122                KeyOneClicked(this, e);
123            }

124        }

125        private void btnNumber00_Click(object sender, EventArgs e)
126        {
127            if (KeyOneClicked != null)
128            {
129                string delimStr = ":";
130                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
131                currentKey = msg[1];
132                KeyOneClicked(this, e);
133            }

134        }

135        private void btnDot_Click(object sender, EventArgs e)
136        {
137            if (KeyOneClicked != null)
138            {
139                string delimStr = ":";
140                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
141                currentKey = msg[1];
142                KeyOneClicked(this, e);
143            }

144        }

145        private void btnBackSpace_Click(object sender, EventArgs e)
146        {
147            if (KeyOneClicked != null)
148            {
149                string delimStr = ":";
150                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
151                currentKey = msg[1];
152                KeyOneClicked(this, e);
153            }

154        }

155        private void btnCancel_Click(object sender, EventArgs e)
156        {
157            if (KeyOneClicked != null)
158            {
159                string delimStr = ":";
160                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
161                currentKey = msg[1];
162                KeyOneClicked(this, e);
163            }

164        }

165        private void btnEnter_Click(object sender, EventArgs e)
166        {
167            if (KeyOneClicked != null)
168            {
169                string delimStr = ":";
170                string[] msg = sender.ToString().Split(delimStr.ToCharArray());
171                currentKey = msg[1];
172                KeyOneClicked(this, e);
173            }

174        }
       
175    }

176}
177
178

举例用法:
 1private void keyBoard1_KeyOneClicked(object sender, EventArgs e)
 2        {
 3            switch (this.keyBoard1.CurrentKey.Trim())
 4            {
 5                case "1":
 6                case "2":
 7                case "3":
 8                case "4":
 9                case "5":
10                case "6":
11                case "7":
12                case "8":
13                case "9":
14                case "0":
15                case "00":
16                case ".":
17                    this.textBox1.Text += this.keyBoard1.CurrentKey.Trim();
18                    break;
19                case "":
20                    if (this.textBox1.Text.Length > 1)
21                    {
22                        this.textBox1.Text = this.textBox1.Text.Substring(0this.textBox1.Text.Length - 1);
23                    }

24                    break;
25                case "取消":
26                    this.textBox1.Text = string.Empty;
27                    break;
28                case "确\n认":
29                    //进行认证
30                    if (this.textBox1.Text.IndexOf("."0this.textBox1.Text.Length) > 0)
31                    {
32                        MessageBox.Show("your input is wrong ");
33                    }

34                    else
35                    {
36                        MessageBox.Show("your input is int ");
37                    }

38                    break;
39                default:
40                    break;
41            }

42        }

43
posted @ 2007-09-29 21:41  Simmy.卧龙先生  阅读(553)  评论(2编辑  收藏  举报