读书人

怎样识别datagridview中的某列是否Dat

发布时间: 2012-01-09 21:05:42 作者: rapoo

怎样识别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());
}

读书人网 >C#

热点推荐