+ -
当前位置:首页 → 问答吧 → 关于datagridview TextChanged的问题

关于datagridview TextChanged的问题

时间:2011-12-11

来源:互联网

C# code

private void dataGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            
                if (e.Control is DataGridViewTextBoxEditingControl)
                {
                    DataGridViewTextBoxEditingControl tb = (DataGridViewTextBoxEditingControl)e.Control;
                    tb.TextChanged += new EventHandler(cellValueChanged);
                }
                
            
        }

       
        private void cellValueChanged(object sender, EventArgs e)
        {
            DataGridViewTextBoxEditingControl textBox = (DataGridViewTextBoxEditingControl)sender;
            if (!textBox.Text.Trim().Equals(""))
            {
                MessageBox.Show(textBox.Text);
            }
        }




代码如上 我在一个单元格中 输入内容的时候 这个textChanged事件会执行多次 比如 第一个单元格会执行两次 第二个就会执行三次 一次类推


不知道是什么原因 给点指点。。。 谢谢

作者: huangcaihua   发布时间: 2011-12-11

刚才在
tb.TextChanged += new EventHandler(cellValueChanged);
之前加了一行:
tb.TextChanged -= new EventHandler(cellValueChanged);
就可以了 

但是不知道为什么会这样。。。

作者: huangcaihua   发布时间: 2011-12-11

tb.TextChanged += new EventHandler(cellValueChanged);加事件

tb.TextChanged -= new EventHandler(cellValueChanged);去掉事件

作者: hefeng_aspnet   发布时间: 2011-12-11

相关阅读 更多