这样做:
private void AddGridStyle(DataSet ds)
{
int[] colWidth = {100, 200, 300, 100}; //各列宽度
string[] colMap = {"code", "ID_Card", "Name", "Address"}; //各列名称
string[] colName = {"编号", "身份证编号", "姓名", "住址"}; DataGridTableStyle myGridStyle = new DataGridTableStyle();
myGridStyle.MappingName = ds.Tables[0].TableName; for (int i= 0; i<colWidth.Length - 1;i++)
{
DataGridTextBoxColumn nameColumnStyle = new DataGridTextBoxColumn();
nameColumnStyle.MappingName = colMap[i];
nameColumnStyle.Width = colWidth[i];
nameColumnStyle.HeaderText = colName[i];
myGridStyle.GridColumnStyles.Add(nameColumnStyle);
}
//清除DataGrid样式
this.dataGrid1.TableStyles.Clear();
//给DataGrid添加新样式
this.dataGrid1.TableStyles.Add(myGridStyle);
this.dataGrid1.DataSource = ds.Tables[0];
}private void button4_Click(object sender, System.EventArgs e)
{
string strConn="server=(local);database=mydata;uid=sa;pwd=sa";
SqlConnection cn=new SqlConnection(strConn);
SqlDataAdapter ada=new SqlDataAdapter();
ada.SelectCommand=new SqlCommand("select * from system_personnel",cn);
DataSet ds=new DataSet();
ada.Fill(ds);
AddGridStyle(ds);
}

解决方案 »

  1.   

    可以对列进行格式化,也可以在取数据的时候使用select ... as ...的方式
      

  2.   

    指定列标题的名称就行了吧! select ... as ...也是好的方法呀!
      

  3.   

    可以在写入sql语句的时候改变
    如:select user as 用户名 from table1
    这样得到的列头就是用户名了。
      

  4.   

    还是sql方便,试想,如果有10000个用户,数组怎么定义和维护,sql则可以这一点