c# Winform DataGridView 当前单元格失去焦点的有关问题

C# 专栏收录该内容
28 篇文章 0 订阅

最近在做一个项目时遇到了这样一个问题,在一个DataGridview中的某一个单元格输入了内容,点击窗体上的Button按钮(输入的光标还在那个输入的单元格中,没有失去焦点),获取到的那个单元格的值不是刚才输入的值,还是输入前的值,现将解决方法整理如下:

在DataGridView的EditingControlShowing事件中:

        private void dataGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            TextBox EditingTB = e.Control as TextBox; // 获取编辑用的文本框的引用  
            EditingTB.TextChanged += EditingTB_TextChanged; // 动态注册事件  
        }

        // 当子控件的内容更改时发生  
        private void EditingTB_TextChanged(object sender, EventArgs e)
        {
            if (this.dataGridView.CurrentCell.ColumnIndex == 9)
            {
                this.dataGridView.CurrentCell.Value = (sender as TextBox).Text;
            }
        }


这样就解决了上述问题

  • 1
    点赞
  • 1
    评论
  • 4
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

程序E生

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值