如何解决将datagridview的列名称添加到独立的组合框控件
我已经通过数据表dgvDisplay
填充了数据网格视图dTable
。我想将Datagridview 列名添加到另一个控件组合框 cmbSearchColumn
作为项目。我该怎么办?
dTable = LoadDTable();
dgvDisplay.DataSource = dTable;
cmbSearchColumn.DataSource = ??
解决方法
您可以像这样从location
获得List<string>
的列名:
DataTable
然后,您可以将List<string> colNames = dTable.Columns.Cast<DataColumn>().Select(x => x.ColumnName).ToList());
中的DataSource
设置为此列名中的ComboBox
:
List<string>
如果您想要datagridview的标题文本:
cmbSearchColumn.DataSource = colNames;
,
有2种方法可以实现
(或者您可以使用Ryan Wilson答案中介绍的LINQ)
private void Myfunction()
{
DataTable dTable = new DataTable();
// Option 1:
for(int i = 0;i< dTable.Columns.Count;i++)
{
cmbSearchColumn.Items.Add(dTable.Columns[i].ColumnName);
}
// Option 2:
List<string> Cols = new List<string>();
for (int i = 0; i < dTable.Columns.Count; i++)
{
Cols.Add(dTable.Columns[i].ColumnName);
}
cmbSearchColumn.DataSource = cmbSearchColumn;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。