|
发表于 2020-1-29 02:00:01
|
显示全部楼层
private void changColumn()
{
//创建一个DataTable对象,包括列 DataTable dataTable = new DataTable ("FunctionArea");
string[] arrstrFunctionalArea = new string []{"No.","id","jsid","单位名称","姓名","岗位工资","薪级工资","保留工资","住房补助","补助工资","补充一","补充二","补充三","绩效工资","补差","电话费","节日补助","应领金额","住房公积金","伙食费","扣费一","扣费二","实领金额"};
DataColumn dtCol = null;
//创建String列
for(int i=0; i< arrstrFunctionalArea.Length;i++)
{
dtCol = new DataColumn(arrstrFunctionalArea[i]);
dtCol.DataType = Type.GetType("System.String");
dtCol.DefaultValue = "";
dataTable.Columns.Add(dtCol);
}
//把表绑定到DataGrid
dataGrid.DataSource = dataTable;
//为DataGrid加载DataGridTableStyle样式
if(!dataGrid.TableStyles.Contains("FunctionArea"))
{
DataGridTableStyle dgdtblStyle = new DataGridTableStyle();
dgdtblStyle.MappingName = dataTable.TableName;
dataGrid.TableStyles.Add(dgdtblStyle);
dgdtblStyle.RowHeadersVisible = false;
dgdtblStyle.HeaderBackColor = Color.LightSteelBlue;
dgdtblStyle.AllowSorting = false;
dgdtblStyle.HeaderBackColor = Color.FromArgb(8,36,107);
dgdtblStyle.RowHeadersVisible = false;
dgdtblStyle.HeaderForeColor = Color.White;
dgdtblStyle.HeaderFont = new System.Drawing.Font("Microsoft Sans Serif", 9F,
System.Drawing.FontStyle.Bold,
System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
dgdtblStyle.GridLineColor = Color.DarkGray;
dgdtblStyle.PreferredRowHeight = 22;
dataGrid.BackgroundColor = Color.White;
//设置列的宽度
GridColumnStylesCollection colStyle = dataGrid.TableStyles[0].GridColumnStyles;
colStyle[0].Width = 30;
colStyle[1].Width = 0;
colStyle[2].Width = 0;
colStyle[3].Width =70;
colStyle[4].Width = 35;
for(int j=4;j<=22;j++)
colStyle[j].Width = 50;
DataTable dt=data.GetDataTable("select id as 序号,jsid as 单位编号,dpname as 单位名称,"
+"name as 姓名,gw as 岗位工资,xj as 薪级工资,bl as 保留工资,"
+"zf as 住房补助,bz as 补助工资,ba as 补充一,bb as 补充二,"
+"bc as 补充三,jx as 绩效工资,bch as 补差,dh as 电话费,"
+"jb as 节日补助,gw+xj+bl+zf+bz+ba+bb+bc+jx+bch+dh+jb as 应领金额,kzf as 住房公积金,khs as 伙食费,ka as 扣费一,"
+"kb as 扣费二,应领金额-kzf-khs-ka-kb as 实领金额 from ryinfo ");
string s=dt.Rows[0][0].ToString();
for(int i=0;i<dt.Rows.Count;i++)
{
DataRow myDataRow=dataTable.NewRow();
myDataRow[0] = i+1;
for(int j=0;j<22;j++)
myDataRow[j+1] = dt.Rows[i][j];
dataTable.Rows.Add(myDataRow);
}
}
}
|
|