【发布时间】:2018-02-27 08:00:21
【问题描述】:
如何通过ColumnName 从DataGridView 获得Column 的ColumnIndex?
这是伪代码:
ColumnIndex = ColumnName("SampleName");
【问题讨论】:
-
您的伪代码没有反映您的解释,请编辑您的帖子以使其更清晰
标签: c# .net winforms datagridview
如何通过ColumnName 从DataGridView 获得Column 的ColumnIndex?
这是伪代码:
ColumnIndex = ColumnName("SampleName");
【问题讨论】:
标签: c# .net winforms datagridview
您可以使用IndexOf。像这样:
var dataGridViewColumn = dataGridView1.Columns[ColumnName];
if (dataGridViewColumn != null)
{
int index = dataGridView1.Columns.IndexOf(dataGridViewColumn);
}
或者像这样使用Index 和Null-conditional 运算符(?.):
var index = dataGridView1.Columns[ColumnName]?.Index;
【讨论】:
最简单的方法:
myData.Columns.IndexOf(/*DataGridViewColumn*/)
myData.Columns[/*ColumnName*/].Index
或者:
private void dataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
int ColumnIndex= dataGridView.CurrentCell.ColumnIndex;
}
【讨论】:
int columnIndex = e.ColumnIndex;)无论如何,您的解决方案只有在用户点击一个单元格时才有效,而且问题中的任何地方都没有提到这一点
获取列的索引
myDGV.Columns.IndexOf(myDGV.Columns["SampleColumn"];
或者像你说的更简单
myDGV.Columns["SampleColumn"].Index;
【讨论】: