2010-03-09 112 views
0

我有一个DataGridView绑定到一个DataTable。 绑定完成后,我手动搜索DGV的所有单元,并用DataGridViewComboBoxCell实例替换单个常规DGV单元。单元有自己的数据源绑定到它。.NET DataGridViewComboBoxCell行为失去焦点

我遇到的问题是,当用户在的DataGridViewComboBoxCell单元的选择和离开它,它从将DisplayMember是什么改变其显示的字符串(像“仓库#23”),它的底层ValueMember(像23)。当单元格重新输入时,它将切换回显示DisplayMember(依此类推)。除此之外,所有功能都正常工作(GUI可用,可以进行选择,只显示有问题)。

DataGridViewComboBoxCell对象是否存在控制此行为的属性?或者,这种行为是否从我手动在常规DGV列中植入DataGridViewComboBoxCell?

哦,我这样做的原因是我需要一个简单的方法来构建一个即时用户输入GUI。人们可以简单地以编程方式构建DataTable并将其插入DGV。 DGV构建“GUI”并使其可用。您可以将一列用于标题,一列用于用户输入。我现在不仅需要标准文本单元格(基本上是文本框),还需要面向选择的组合框单元格。

回答

0

我会为可能发现自己处于这种情况的人提供各种解决方案。

我没有发现发生了什么真正的原因,但通过手动处理单元格内容的显示来设法解决这种情况。您可以通过为DataGridView的CellFormatting事件实现事件处理程序来完成此操作。在那里,您将e.Value属性设置为您需要显示的任何内容。