• DataGirdView 编辑项时的验证


    dgvConfig.DataSource = CreateTable();
                dgvConfig.Columns["编号"].ReadOnly = true; //只读
                dgvConfig.AllowUserToAddRows = false;  //不允许添加新行
                dgvConfig.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dgvConfig_EditingControlShowing);
    

      

     void dgvConfig_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
            {
                DataGridViewTextBoxEditingControl cotrol = (DataGridViewTextBoxEditingControl)e.Control;
                cotrol.KeyPress += new KeyPressEventHandler(Edit_Value);
                cotrol.MaxLength = 5;
            }
    

      

    //DataGridView 编辑项输入
            protected void Edit_Value(object sender, KeyPressEventArgs e)
            {
                DataGridViewTextBoxEditingControl control = (DataGridViewTextBoxEditingControl)sender;
    
                if (!Char.IsNumber(e.KeyChar) && !Char.IsPunctuation(e.KeyChar) && !Char.IsControl(e.KeyChar))
                {
                    e.Handled = true;//消除不合适字符  
                }
                else if (Char.IsPunctuation(e.KeyChar))
                {
                    if (e.KeyChar != '.' || control.Text.Length == 0)//小数点  
                    {
                        e.Handled = true;
                    }
                    if (control.Text.LastIndexOf('.') != -1)
                    {
                        e.Handled = true;
                    }
                }
            }
    

      

    #region  输入
    
            //允许输入小数
            public static void TextBox_Double_KeyPress(object sender, KeyPressEventArgs e)
            {
                TextBox tb = (TextBox)sender;
                if (tb == null)
                {
                    e.Handled = true;//消除不合适字符
                    return;
                }
                if (!Char.IsNumber(e.KeyChar) && !Char.IsPunctuation(e.KeyChar) && !Char.IsControl(e.KeyChar))
                {
                    e.Handled = true;//消除不合适字符  
                }
                else if (Char.IsPunctuation(e.KeyChar))
                {
                    if (e.KeyChar != '.' || tb.Text.Length == 0)//小数点  
                    {
                        e.Handled = true;
                    }
                    if (tb.Text.LastIndexOf('.') != -1)
                    {
                        e.Handled = true;
                    }
                }
            }
    
            //只能输入整数
            public static void Number_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (e.KeyChar != '')//这是允许输入退格键
                {
                    if ((e.KeyChar < '0') || (e.KeyChar > '9'))//这是允许输入0-9数字
                    {
                        e.Handled = true;
                    }
                }
            }
    
            //DataGridView 编辑项输入
            public static void DataGridView_Edit_Value(object sender, KeyPressEventArgs e)
            {
                DataGridViewTextBoxEditingControl control = (DataGridViewTextBoxEditingControl)sender;
    
                if (!Char.IsNumber(e.KeyChar) && !Char.IsPunctuation(e.KeyChar) && !Char.IsControl(e.KeyChar))
                {
                    e.Handled = true;//消除不合适字符  
                }
                else if (Char.IsPunctuation(e.KeyChar))
                {
                    if (e.KeyChar != '.' || control.Text.Length == 0)//小数点  
                    {
                        e.Handled = true;
                    }
                    if (control.Text.LastIndexOf('.') != -1)
                    {
                        e.Handled = true;
                    }
                }
            }
    
            #endregion
  • 相关阅读:
    Installing Apache Spark on Ubuntu 16.04
    基尼系数(Gini coefficient),洛伦茨系数
    非平衡数据机器学习
    FCM聚类算法介绍
    基于大数据技术的手机用户画像与征信研究
    归一化方法 Normalization Method
    区块链(Blockchain)
    统计抽样
    动态规划 Dynamic Programming
    LTE中的各种ID含义
  • 原文地址:https://www.cnblogs.com/gxivwshjj/p/3351683.html
Copyright © 2020-2023  润新知