`
- 浏览:
133602 次
- 性别:
- 来自:
西安
-
动态创建DataTable,GridView创建多表头,表头跨行或跨列合并,创建计算列及列内容自适应等
-
protectedvoidPage_Load(objectsender,EventArgse)
-
{
-
if(!IsPostBack)
-
{
-
GridView1.DataSource=FormatDT();
-
GridView1.DataBind();
-
}
-
}
-
-
protectedvoidGridView1_RowCreated(objectsender,GridViewRowEventArgse)
-
{
-
switch(e.Row.RowType)
-
{
-
-
caseDataControlRowType.Header:
-
-
TableCellCollectiontcHeader=e.Row.Cells;
-
tcHeader.Clear();
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[0].Attributes.Add("bgcolor","#8E8E8E");
-
tcHeader[0].Attributes.Add("rowspan","0");
-
tcHeader[0].Attributes.Add("colspan","9");
-
tcHeader[0].Text="全部信息</tr><tr>";
-
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[1].Attributes.Add("bgcolor","#008A23");
-
tcHeader[1].Text="身份证号码";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[2].Text="基本信息";
-
tcHeader[2].Attributes.Add("bgcolor","#005EBB");
-
tcHeader[2].Attributes.Add("colspan","3");
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[3].Text="福利";
-
tcHeader[3].Attributes.Add("bgcolor","#008A23");
-
tcHeader[3].Attributes.Add("colspan","2");
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[4].Text="应发合计";
-
tcHeader[4].Attributes.Add("bgcolor","#008A23");
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[5].Text="联系方式</tr><tr>";
-
tcHeader[5].Attributes.Add("bgcolor","#005EBB");
-
tcHeader[5].Attributes.Add("colspan","2");
-
-
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[6].Text="身份证号码";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[7].Text="姓名";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[8].Text="出生日期";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[9].Text="性别";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[10].Text="基本工资";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[11].Text="奖金";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[12].Text="应发合计";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[13].Text="家庭住址";
-
-
tcHeader.Add(newTableHeaderCell());
-
tcHeader[14].Text="邮政编码";
-
break;
-
-
caseDataControlRowType.DataRow:
-
TableCellCollectioncells1=e.Row.Cells;
-
for(inti=0;i<cells1.Count;i++)
-
{
-
cells1[i].Wrap=false;
-
}
-
break;
-
}
-
}
-
-
-
protectedDataTableCreateDT()
-
{
-
DataTabletblDatas=newDataTable("Datas");
-
-
-
-
-
-
-
tblDatas.Columns.Add("身份证号码",Type.GetType("System.String"));
-
tblDatas.Columns.Add("姓名",Type.GetType("System.String"));
-
tblDatas.Columns.Add("出生日期",Type.GetType("System.String"));
-
tblDatas.Columns.Add("性别",Type.GetType("System.String"));
-
tblDatas.Columns.Add("基本工资",Type.GetType("System.Decimal"));
-
tblDatas.Columns.Add("奖金",Type.GetType("System.Decimal"));
-
-
tblDatas.Columns.Add("应发合计",Type.GetType("System.String"),"基本工资+奖金");
-
-
tblDatas.Columns.Add("家庭住址",Type.GetType("System.String"));
-
tblDatas.Columns.Add("邮政编码",Type.GetType("System.String"));
-
-
-
tblDatas.Rows.Add(newobject[]{null,"张三","1982","0",3000,1000,null,"深圳市","518000"});
-
tblDatas.Rows.Add(newobject[]{null,"李四","1983","1",3500,1200,null,"深圳市","518000"});
-
tblDatas.Rows.Add(newobject[]{null,"王五","1984","1",4000,1300,null,"深圳市","518000"});
-
tblDatas.Rows.Add(newobject[]{null,"赵六","1985","0",5000,1400,null,"深圳市","518000"});
-
tblDatas.Rows.Add(newobject[]{null,"牛七","1986","1",6000,1500,null,"深圳市","518000"});
-
returntblDatas;
-
}
-
-
-
protectedDataTableFormatDT()
-
{
-
DataTabledt1=CreateDT();
-
-
if(dt1.Columns.Contains("性别"))
-
{
-
foreach(DataRowdrindt1.Rows)
-
{
-
dr["性别"]=(dr["性别"].ToString()=="0")?"女":"男";
-
}
-
}
-
returndt1;
-
}
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
.net对导出excel是表头的设置,可以跨行与跨列设置表头,以及设置多表头
动态创建datatable动态创建datatable动态创建datatable动态创建datatable动态创建datatable
DataTable动态行转列类,设置需要装置的列名和数据列后,可以动态将DataTable的列进行转置。
Flutter实现Table跨行跨列
wpf 动态合并datagrid表头单元格
jquery datatable 单元格合并,通过js实现相同内容单元格动态合并!!!jquery datatable 单元格合并,通过js实现相同内容单元格动态合并!!!
jquery.datatables,异步请求后台数据时,调用api动态合并行。
C# DataTable行转列 可能从数据库读出来的数据需要转换下行列来显示、在SQL里转换占用SQL资源 放在界面用C#转换可能更好 这是个简单的例子 原来显示: 年级 班级 人数 转换为: 年级 一班 二班 三班 合计
导出Excel表格 /// 导出Excel /// 创建Excel并写入数据 /// List转化为DataTable /// 转换数据类型
根据获取的数据(dataTable),来自动合并行、列;
datatable中移除重复行 ,并能合并重复行
//创建数据库连接 SqlConnection con = new SqlConnection("server=.;database = test; uid = sa; pwd = 123456"); try { //打开数据库连接 con.Open(); //数据适配器,传输数据库数据 SqlDataAdapter sda = ...
VS2008+Access数据库制作分别实现了GridView导出Excel和DataTable直接导出Excel不再需要绑定GridView,希望可以帮到需要的朋友们。
倒出Excel的数据可随意调整,其他没什么可说的,自已看吧
个人宝贵经验总结:修改DataTable的某一行某一列的值
gridview—datatable -dataset -dataview 2011-01-17
c# winform =====datagridview 多行表头 datagridview 多行表头 datagridview 多行表头 可不容易找到的啊 费了好大力,呵呵 分数稍微高一点
DataTable合并重复行(解决方案)
wpf datagrid 单元格颜色 根据条件改变颜色换 根据表datatable动态显示datagrid内容
完美的数据报表reportViewer动态绑定DataTable数据, 1.创建窗体form1 2.拖入reportViewer1 3.解决方案中添加-数据-数据集(dataset1)-工具栏中拖入DataTable到xsd界面-添加列 DataColumn1-DataColumn4 4.解决方案...