DataBinding时使用DatabaseTable字段描述

时间:2012-11-20 07:58:01

标签: c# database data-binding

我正在使用C#,Linq和DataGridView。

我这样绑定我的网格。

var db = new DataClassesDataContext();

var results = db.Results;

.... much later on in the code..

dataGridView1.DataSource = results;

它使用了字段名称来保存我的大量时间,但是可以使用FIELD描述,因此我的客户端有更好的列名。

我现在正在做的是在字段名称中使用UNDERSCORES

  • ID
  • USER_NAME
  • SUR_NAME

所以在ColumnAdded事件中我做了

    private void dataGridView1_ColumnAdded(object sender, DataGridViewColumnEventArgs e)
    {
        e.Column.HeaderText = e.Column.HeaderText.Replace("_"," ");


    }

但它只是一个解决方案..

1 个答案:

答案 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,则需要在这两个对象之间使用绑定源才能使其正常工作。