首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎样识别datagridview中的某列是否DataGridViewComboBoxColumn类型,并枚举Item下拉列表?解决思路

2012-01-09 
怎样识别datagridview中的某列是否DataGridViewComboBoxColumn类型,并枚举Item下拉列表?例如,1、对于datagr

怎样识别datagridview中的某列是否DataGridViewComboBoxColumn类型,并枚举Item下拉列表?
例如,
1、对于datagridview1.Rows[1].Cells[1],如何识别其所在列是否DataGridViewComboBoxColumn?
2、如果是,又如何将绑定的ValueMember和DisplayMember枚举出来?
3、第2个问题换一种提法:或者,如何根据这个cell的显示值得到对应的实际value?

谢谢!

[解决办法]
给个思路:

foreach (DataGridViewColumn o in this.dataGridView1.Columns)
{
DataGridViewComboBoxColumn ss;
if (o.GetType() == typeof(DataGridViewComboBoxColumn))
{

ss = o as DataGridViewComboBoxColumn;

for (int i=0;i <ss.Items.Count;i++)
{

}

}
}
[解决办法]
1.
方法1,判断Cell的类型
if (this.dataGridView1.CurrentCell is DataGridViewComboBoxCell)
{
MessageBox.Show(this.dataGridView1.CurrentCell.Value.ToString());
}

方法2,判断Cell所在列的类型
if (this.dataGridView1.Columns[this.dataGridView1.CurrentCell.ColumnIndex] is DataGridViewComboBoxColumn)
{
MessageBox.Show(this.dataGridView1.CurrentCell.Value.ToString());
}

热点排行