Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在datagridview组合框列中获得正确的更改?_C#_Winforms_Datagridview_Datagridviewcombobox - Fatal编程技术网

C# 如何在datagridview组合框列中获得正确的更改?

C# 如何在datagridview组合框列中获得正确的更改?,c#,winforms,datagridview,datagridviewcombobox,C#,Winforms,Datagridview,Datagridviewcombobox,我有一个 datagridview 其中我有一个 DataGridViewComboBoxColumn 作为专栏的一部分 本专栏 ColumnType = DataGridViewComboBoxColumn. 在这个组合框中,我有一些项目,如管理员、用户、动物、人类和鸟类。加载网格视图时显示的第一个项目是admin(注意小写字母) 一切正常,但问题出现了-每当用户将名称admin更改为admin/admin/admin等,然后单击gridview中的任何其他位置,然后此列再次显示列中的a

我有一个

datagridview
其中我有一个

DataGridViewComboBoxColumn
作为专栏的一部分

本专栏

ColumnType = DataGridViewComboBoxColumn.
在这个组合框中,我有一些项目,如管理员、用户、动物、人类和鸟类。加载网格视图时显示的第一个项目是admin(注意小写字母)

一切正常,但问题出现了-每当用户将名称admin更改为admin/admin/admin等,然后单击gridview中的任何其他位置,然后此列再次显示列中的admin,但当完成相同的场景时,但这一次用户按下enter或tab按钮,它的价值发生了变化

我不明白为什么会这样

此组合框的单击输入/选项卡之间有什么区别

还有一件事是,若用户输入的是除“admin”之外的任何其他单词,则其值即使在单击时也会成功更改

我认为当我输入大写字母或混合使用大写和小写字母时,问题就出现了


组合框的其他项目(如动物/鸟类等)也会发生同样的情况。

使用Enter或Tab键,您将保持在同一行。单击另一行时,DataGridView将验证该行。如果我记得很好(我确信在有界的DATGRIDVIEWCOMBOBOXBULL的情况下),组合框是在DROPPHODLIST模式中,防止用户设置不属于列表的值。如果只有一行,用户点击GRIDVIEW的空白,该怎么办?在这种情况下,问题也是一样的@空白行上的GraveToCHILK也触发了行验证。所以有解决方案吗?@涂鸦显示样式=组合框