我正在使用C#,Linq和DataGridView。
我这样绑定我的网格。
var db = new DataClassesDataContext();
var results = db.Results;
.... much later on in the code..
dataGridView1.DataSource = results;
它使用了字段名称来保存我的大量时间,但是可以使用FIELD描述,因此我的客户端有更好的列名。
我现在正在做的是在字段名称中使用UNDERSCORES
所以在ColumnAdded事件中我做了
private void dataGridView1_ColumnAdded(object sender, DataGridViewColumnEventArgs e)
{
e.Column.HeaderText = e.Column.HeaderText.Replace("_"," ");
}
但它只是一个解决方案..
答案 0 :(得分:1)
如果您知道这些列将始终代表数据库中的特定字段,那么您可以在设置GridView的数据源后直接设置它们。
DataGridView.Columns[0].HeaderText = "Column 1";
DataGridView.Columns[1].HeaderText = "Column 2";
DataGridView.Columns[2].HeaderText = "Column 3";
DataGridView.Columns[3].HeaderText = "Column 4";
它始终取决于您将数据库中的命名约定与您希望如何表示DataGridView
中的每个列的方式进行比较。它不会像你在你的例子中那样操纵它们。
有一点我注意到可能会遗漏。如果您计划允许用户编辑DataGridView中的数据并将更改提交到DataContext
,则需要在这两个对象之间使用绑定源才能使其正常工作。