gpt4 book ai didi

c# - Datagridivew DataGridViewComboBoxColumn 选择值成员

转载 作者:行者123 更新时间:2023-11-30 18:01:48 25 4
gpt4 key购买 nike

我有一个 combobox 列的 datagridview。我填充组合框列。当我从组合框列中选择任何文本时,我需要在 for 循环中读取数据时获取值。

这里是dgFilter datagridview

            DataGridViewComboBoxColumn dgcoSpec = new DataGridViewComboBoxColumn();
dgcoSpec = new DataGridViewComboBoxColumn();
dgcoSpec.DataSource = loadOperators();
dgcoSpec.DisplayMember = "Operatortxt";
dgcoSpec.ValueMember = "Operatorvalue";
dgcoSpec.AutoComplete = true;
dgcoSpec.HeaderText = "Operators";
dgcoSpec.Name = "Operators";
dgcoSpec.DefaultCellStyle.NullValue = "--Select--";
dgcoSpec.Width = 130;
dgFilter.Columns.Insert(1, dgcoSpec);

我用这种方式从组合框列中读取数据

for (int i = 0; i <= dgFilter.Rows.Count - 1; i++)
{
strOperator = dgFilter.Rows[i].Cells[1].Value.ToString().Trim();
}

但问题是我没有获得组合框值成员,而是获得了显示成员。那么如何从 for 循环中提取值成员。请用代码指导我。谢谢

最佳答案

值成员 DataGridViewComboboxCell 中显示的字符串。

实际的 Combobox 控件仅在用户编辑单元格的时间范围内存在。

如果你的意思是你想获取DataGridViewComboboxCell项列表中值的索引,你可以查询值的索引:

for (int i = 0; i <= dgFilter.Rows.Count - 1; i++)
{
var cell = dgFilter.Rows[i].Cells[1] as DataGridViewComboboxCell;
int index = cell == null || cell.Value == null ? -1 : cell.Items.IndexOf(cell.Value);
Console.WriteLine(index);
}

在这个例子中,我使用 -1 作为一个无效值。

编辑 刚刚注意到您正在使用DataSource;参见 DataGridViewComboBoxColumn name/value how?可能重复。

关于c# - Datagridivew DataGridViewComboBoxColumn 选择值成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8711182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com