• winform的datagridview单元格输入限制和右键单击datagridview单元格焦点跟着改变


    在datagridview的EditingControlShowing事件里面添加代码:

    if (this.dgv_pch.Columns[dgv_pch.CurrentCell.ColumnIndex].HeaderText == "批内序号")//判断是哪列的单元格需要限制
    {
    (dgv_pch.Columns[dgv_pch.CurrentCell.ColumnIndex] as DataGridViewTextBoxColumn).MaxInputLength = 4;//限制只能输入内容长度为4
    e.Control.KeyPress += new KeyPressEventHandler(EditingControl_KeyPress);//限制只能输入数字
    //e.Control.KeyPress -= new KeyPressEventHandler(EditingControl_KeyPress);
    }

    //限制只能输入数字和.和backspace
    private void EditingControl_KeyPress(object sender, KeyPressEventArgs e)
    {
    int keyValue = (int)e.KeyChar;
    if ((keyValue >= 48 && keyValue <= 57) || keyValue == 8 || keyValue == 46)
    {
    if (sender != null && sender is TextBox && keyValue == 46)
    {
    if (((TextBox)sender).Text.IndexOf(".") >= 0)
    e.Handled = true;
    else
    e.Handled = false;
    }
    else
    e.Handled = false;
    }
    else
    e.Handled = true;
    }

    //只能输入数字和backspace

    private void EditingControl_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (Convert.ToInt32(e.KeyChar) == 8)
    {
    e.Handled = false;
    }
    else
    {
    Regex numRegex = new Regex(@"^(-?[0-9])$"); // 匹配正则表达式
    Match result = numRegex.Match(Convert.ToString(e.KeyChar));
    if (result.Success) // 输入的不是数字
    {
    e.Handled = false; // textBox内容不变
    }
    else
    {
    e.Handled = true; // 将现在textBox的值保存下来
    }
    }
    }

    //右键单击datagridview的单元格,单元格焦点跟着改变

    //在datagridview的CellMouseDown事件里面写

    /// <summary>
    /// 右键单击datagridview的单元格焦点跟着改变
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void dataGridView_book_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
    {
    if (e.RowIndex >= 0)
    {
    if (e.Button == System.Windows.Forms.MouseButtons.Right)
    {
    dataGridView_book.ClearSelection();
    dataGridView_book.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;

    }
    }
    }

  • 相关阅读:
    第4月第1天 makefile automake
    第3月30天 UIImage imageWithContentsOfFile卡顿 Can't add self as subview MPMoviePlayerControlle rcrash
    第3月第27天 uitableviewcell复用
    learning uboot fstype command
    learning uboot part command
    linux command dialog
    linux command curl and sha256sum implement download verification package
    learning shell script prompt to run with superuser privileges (4)
    learning shell get script absolute path (3)
    learning shell args handing key=value example (2)
  • 原文地址:https://www.cnblogs.com/luoxiaozhao/p/5032006.html
Copyright © 2020-2023  润新知