假设我有一个datagridview,datagridview有一个DataGridViewComboBoxColumn。 我已经使用国家名称和代码填充datagridview组合框列。
所以现在我希望当我在for循环中读取datagridview单元格值时,我想要获取DataGridViewComboBoxColumn选择的值和文本。我无法获得该值,但无法从forG循环中的DataGridViewComboBoxColumn获取显示文本。
如果有可能,那么plzz会帮助我处理小代码。
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i <= dgList.Rows.Count - 1; i++)
{
DataGridViewComboBoxCell cell = dgList.Rows[i].Cells[0] as DataGridViewComboBoxCell;
int index = cell == null || cell.Value == null ? -1 : cell.Items.IndexOf(cell.Value);
string strVal = cell.Value.ToString();
}
}
感谢
答案 0 :(得分:1)
您可以尝试访问FormattedValue
和Value
等值,这应该会为您提供两个值。
我曾尝试使用Dictionary<string,string>
作为DataSource
,并使用上述属性,我能够获得这两个值。
答案 1 :(得分:0)
试试这个:
for (int i = 0; i <= dgList.Rows.Count - 1; i++)
{
string strval=((ComboBox)(dgList.Rows[i].cells[0].FindControl("ComboBox1"))).SelectedValue;
}
答案 2 :(得分:0)
您是否只是将值转换为预期类型?
试试这个:
dgList [“columnName”,RowIndex] .Value
例如
Convert.toInt32(dgList [“columnName”,RowIndex] .Value)