好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#按键输入判断封装类

C#按键输入判断封装类

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Keypresscontrolclass

{

    /// <summary>

    /// 按键类  ,判断输入类型

    /// </summary>

    public class KeyEvent

    {

        /// <summary>

        /// 只能 数字/字母

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        public static void ForNumLett(object sender, KeyPressEventArgs e)

        {

            if (!Char.IsNumber(e.KeyChar) && !Char.IsUpper(e.KeyChar) && !Char.IsLower(e.KeyChar) && e.KeyChar != (Char)8)

            {

                e.Handled = true;//输入的是数字

            }

        }

        /// <summary>

        /// 只能 数字、字母、 -

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        public static void ForModel (object sender, KeyPressEventArgs e)

        {

           

            if (e.KeyChar == (Char)45)

                e.Handled = false;

            else if (!Char.IsNumber(e.KeyChar) && !Char.IsUpper(e.KeyChar) && !Char.IsLower(e.KeyChar) && e.KeyChar != (Char)8)

            {

                e.Handled = true;//输入的是数字

            }

        }

        /// <summary>

        /// 只能 数字、 -

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        public static void ForTel(object sender, KeyPressEventArgs e)

        {

            if (e.KeyChar == (Char)45)

                e.Handled = false;

            else if (!Char.IsNumber(e.KeyChar)  && e.KeyChar != (Char)8)

            {

                e.Handled = true;//输入的是数字

            }

        }

        /// <summary>

        /// 输入、字母 可复制

        /// </summary>

        public static void ForModel(object sender, KeyPressEventArgs e,bool isCrtlV)

        {

            if (e.KeyChar == (Char)45)

                e.Handled = false;

            else if (!Char.IsNumber(e.KeyChar) && !Char.IsUpper(e.KeyChar) && !Char.IsLower(e.KeyChar) && e.KeyChar != (Char)8 && !isCrtlV)

            {

                e.Handled = true;//输入的是数字

            }

            else

            {

                isCrtlV = false;

            }

        }

        /// <summary>

        ///  只能 数字

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        public static void ForNum(object sender, KeyPressEventArgs e)

        {

            TextBox tb = sender as TextBox;

            if (!((e.KeyChar >= 48 && e.KeyChar <= 57) || e.KeyChar == 8))

            {

                e.Handled = true;

            }

        }

        /// <summary>

        ///  只能 数字

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        public static void ForDecimal(object sender, KeyPressEventArgs e)

        {

            TextBox tb = sender as TextBox;

            if (!(e.KeyChar >= 48 && e.KeyChar <= 57 || e.KeyChar == 8 || e.KeyChar == 46))

            {

                e.Handled = true;

            }

        }

        private void isCrtlV_KeyDown(object sender, KeyEventArgs e)

        {

            if (e.KeyData == (Keys.Control | Keys.V))

            {

                e.Handled = true;

            }

        }

    }

}


查看更多关于C#按键输入判断封装类的详细内容...

  阅读:15次