zoukankan      html  css  js  c++  java
  • 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;

    }
    }
    }

  • 相关阅读:
    JS知识点
    JQuery知识点
    常见简单算法
    Html知识点
    Java基础_基本语法
    Java基础_Java概述
    VBA基础——循环语句
    VBA基础知识———常用语句
    VBA基础概念
    安全、结构良好的jQuery结构模板
  • 原文地址:https://www.cnblogs.com/luoxiaozhao/p/5032006.html
Copyright © 2011-2022 走看看