为了账号安全,请及时绑定邮箱和手机立即绑定

在Win Form DataGridView C#.NET中使字符串的第一个字符大写

在Win Form DataGridView C#.NET中使字符串的第一个字符大写

C#
繁星coding 2021-05-13 22:27:45
因此,我在C#Win Form应用程序中有一个数据网格视图,默认情况下这些单元格是可编辑的,现在我希望每当在这些单元格中键入内容时,最终值都应被视为大写优先,因此这意味着如果有任何用户类型:*string => Stringexample => Exampleanother => AnotherchaRactEr => ChaRactEr*我可以在“单元格值已更改”事件中的代码中执行此操作,但是当我在“单元格值已更改”事件中执行此操作并将该单元格的值设置为格式化字符串(最终用户需要此字符串)时,该事件将触发两次。我不能让这种情况发生,因为在此事件中触发了数据库功能。我已经尝试在其他事件(如“单元格离开”,“单元格输入”和其他事件)中捕获单元格值,但我永远无法捕获它。因此,我需要知道,如果C#.NET中的“数据网格视图”具有任何属性或特性,则该值的第一个字符将变为大写?任何对此的替代建议也将非常有帮助。
查看完整描述

3 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

您可以使用以下代码:


        bool bchange = false;

        private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)

        {

            if (bchange == false)

            {

                bchange = true;

                String oritext = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();

                String newtext= oritext.First().ToString().ToUpper() + oritext.Substring (1);

                //Update Database


                //Update cell

                dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = newtext;


            }

            else 

            {

                bchange = false; 

            }

        }


查看完整回答
反对 回复 2021-05-23
  • 3 回答
  • 0 关注
  • 166 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信