for(int i=0;i<szcd;i++)
{
BoundColumn BC = new BoundColumn();
BC.HeaderText = Shz[i].ToString();//这个就是字段汉字名称
BC.DataField = Spy[i].ToString();//这个是字段的实际名称
DataGrid6.Columns.Add(BC);
}
{
BoundColumn BC = new BoundColumn();
BC.HeaderText = Shz[i].ToString();//这个就是字段汉字名称
BC.DataField = Spy[i].ToString();//这个是字段的实际名称
DataGrid6.Columns.Add(BC);
}
/// ///初始货DataGrid控件
/// </summary>
/// <param name="strArrCloTitles">DataGrid列标题数组</param>
/// <param name="strArrFileds">与DdataGrid列绑定的表字段名数组</param>
/// <param name="strTableName">表名当前DataGrid数据的表名</param>
/// <param name="strFiltCon">DataGrid显示数据集的条件</param>
/// <param name="strFieldNam">数据表的关键字</param>
/// <param name="nEpageRows">分页时每页的记录数</param>
/// nCallType调用类型1、初始化调用;2、数据绑定调用
public void CeIintDataGrd(String []strArrCloTitles,String []strArrFileds,
String strTableName,String strFiltCon,String strKeyFieldNam,int nEpageRows,DataGrid gDataGrd,int nCallType)
{
if(strArrCloTitles.Length<=0)
{
this.strErrorMsg="您未填写系统表,不能初始化DataGrid";
return;
}
//////////设置DataGrd的基本属性
if(nCallType==1)
{
gDataGrd.AutoGenerateColumns=false;
gDataGrd.AllowCustomPaging=true;
gDataGrd.AllowPaging=true;
gDataGrd.AutoGenerateColumns=false;///////自动产生列设置为False;
gDataGrd.GridLines=System.Web.UI.WebControls.GridLines.Both;//横线与竖线
gDataGrd.BorderWidth=3;
gDataGrd.BorderColor=System.Drawing.Color.Silver;
gDataGrd.SelectedItemStyle.BackColor=System.Drawing.Color.Silver;//设置选择项的背景色
gDataGrd.SelectedItemStyle.ForeColor=System.Drawing.Color.Blue;//设置选择项的前景色
gDataGrd.HeaderStyle.BackColor=System.Drawing.Color.Silver;
gDataGrd.HeaderStyle.ForeColor=System.Drawing.Color.Black;
gDataGrd.HeaderStyle.BorderWidth=3;
gDataGrd.HeaderStyle.Height=10;
if(nEpageRows<=0)
gDataGrd.PageSize=6;
else
gDataGrd.PageSize=nEpageRows;
//////////////////
gDataGrd.PagerStyle.PrevPageText="<上一页";
gDataGrd.PagerStyle.NextPageText="下一页>";
//////////////生成一个BoundColumn实例///////////////
BoundColumn BoundClm;
gDataGrd.Font.Size=9;
gDataGrd.Font.Name="宋体";
////////////////////创建Columns并初始化DataGrid的列标题//////////////////
ButtonColumn btnClm=new ButtonColumn();
btnClm.HeaderText=strArrCloTitles[0].ToString();/////设置列标题
btnClm.DataTextField=strArrFileds[0].ToString();///设置列所对应的数据字段
btnClm.HeaderStyle.Font.Name="宋体";
btnClm.HeaderStyle.Font.Size=9;
btnClm.CommandName=System.Web.UI.WebControls.DataGrid.SelectCommandName;
gDataGrd.Columns.Add(btnClm);
for(int nDataGrdCols=1;nDataGrdCols<strArrCloTitles.Length;nDataGrdCols++)
{
BoundClm=new BoundColumn();
BoundClm.HeaderText=strArrCloTitles[nDataGrdCols].ToString();/////设置列标题
BoundClm.DataField=strArrFileds[nDataGrdCols].ToString();///设置列所对应的数据字段
BoundClm.HeaderStyle.Font.Name="宋体";
BoundClm.HeaderStyle.Font.Size=9; BoundClm.HeaderStyle.BackColor=System.Drawing.Color.DarkGray;
BoundClm.HeaderStyle.ForeColor=System.Drawing.Color.Blue;
BoundClm.HeaderStyle.BorderWidth=3;
BoundClm.HeaderStyle.Height=14;
gDataGrd.Columns.Add(BoundClm);
}
}
String strSqlDs="select * from "+strTableName;
if(strFiltCon.Length>0)
strSqlDs=strSqlDs+strFiltCon;
if(gDs.Tables.Count>0)
gDs.Tables.Clear();
gDataAdapter=new SqlDataAdapter(strSqlDs,gConnection);
//////////////////
gConnection=new SqlConnection(ConfigurationSettings.AppSettings["strConn"].ToString());
gCommand=new SqlCommand(strSqlDs,gConnection);
gDataAdapter.Fill(gDs,strTableName); gDataGrd.DataSource=gDs;
gDataGrd.DataMember=strTableName;
gDataGrd.DataKeyField=strKeyFieldNam;
gDataGrd.DataBind(); }///end
动态创建DataGrid的模版列
http://www.csdn.net/Develop/Read_Article.asp?Id=22942
dgTable.MappingName="default";
dgTable.AllowSorting=false;DataGridTextBoxColumn dgColumn;
dgColumn=new DataGridTextBoxColumn();
dgColumn.MappingName="FID";
dgColumn.HeaderText=lbID.Text; //set column's HeaderText
dgColumn.Width=100;
dgTable.GridColumnStyles.Add(dgColumn);dgUser.TableStyles.Clear();
dgUser.TableStyles.Add(dgTable);
private void Form1_Load(object sender, System.EventArgs e)
{
DataGridTableStyle dgTable=new DataGridTableStyle();
dgTable.MappingName="default";
dgTable.AllowSorting=false; DataGridTextBoxColumn dgColumn;
dgColumn=new DataGridTextBoxColumn();
dgColumn.MappingName="FID";
dgColumn.HeaderText="kk"; //set column's HeaderText
dgColumn.Width=100;
dgTable.GridColumnStyles.Add(dgColumn); dataGrid1.TableStyles.Clear();
dataGrid1.TableStyles.Add(dgTable);
}