C# 将DataGridView的各个单元格转换为Combobox

C# 将DataGridView的各个单元格转换为Combobox,c#,asp.net,datagridview,C#,Asp.net,Datagridview,环境:VisualStudio中的Web开发 语言:ASP.NET 恐怕我已经知道答案了,但问也无妨。我有一个从SAP获取数据的应用程序,可以为DataGridView的每一行返回特定的结果或可能的结果列表。因此,用户可能输入“abcd”并得到“1234”,或者他可能得到“1234或2345或3456”。对于每一行,我希望每一列都有多个结果作为组合框返回。其余的应该保持不变,因为在桌子上乱放只有一个结果的组合框会很烦人 这有什么诀窍吗?我知道您可以使用DataGridViewComboBoxCo

环境:VisualStudio中的Web开发 语言:ASP.NET

恐怕我已经知道答案了,但问也无妨。我有一个从SAP获取数据的应用程序,可以为DataGridView的每一行返回特定的结果或可能的结果列表。因此,用户可能输入“abcd”并得到“1234”,或者他可能得到“1234或2345或3456”。对于每一行,我希望每一列都有多个结果作为组合框返回。其余的应该保持不变,因为在桌子上乱放只有一个结果的组合框会很烦人

这有什么诀窍吗?我知道您可以使用DataGridViewComboBoxColumn将整个列“转换”为组合框列,如本博客中所述:
.有没有办法只为特定单元格设置组合框?我知道我可以在表的每一行旁边放一个combobox,让用户从中选择,或者我可以在每一行中都放一个combox,可能只锁定一个结果。不过,我对这两种解决方案都不满意。

您可以尝试向您的DataGridViewCell.Controls添加一个组合框,并使
label.Visible=false或将其删除。可能是这样的:

yourDataGridViewCell.Controls.Clear();
yourDataGridViewCell.Controls.Add(new ComboBox());
yourDataGridViewCell.Controls[0].DataSource = yourList;
//set the value member etc.

很好,谢谢!在这里,我想让它工作起来会很痛苦。