
C#和数据库连接以后怎样把数据导入到excel表中啊?
几种方法吧:
1.将数据库数据存储到文本文件中,格式为xxx|xxx|xxx|,或者xxx(tab)xxx(tab),然后使用excel文本导入功能(这个很简单实用,因为导出到excel表中的东西再进行修改或者调整操作就很容易了)
2.使用c#水晶报表功能直接写入excel
3.很麻烦,首先将excel范例导出为xml,然后使用文本编辑器打开,根据该文本格式调整使用c#导出的文本文件。然后将该文本文件扩展名修改为xls即可(当时没有水晶报表用过这个,真的很麻烦,但确实效果还不错)
c# 导出excel表格
方法1.通过后端程序代码录入数据,执行程序后,导出Excel表格。代码参考如下: //创建一个workbook实例 Workbook wb = new Workbook(); //清除默认的工作表 wb.Worksheets.Clear(); //添加一个工作表并指定表名 Worksheet sheet = wb.Worksheets.Add("职员表"); //横向合并A1到G1的单元格 sheet.Range["A1:G1"].Merge(); //写入数据到A1单元格,设置文字格式及对齐方式 sheet.Range["A1"].Value = "环宇汽车公司员工基本情况登记表"; sheet.Range["A1"].HorizontalAlignment = HorizontalAlignType.Center; sheet.Range["A1"].VerticalAlignment = VerticalAlignType.Center; sheet.Range["A1"].Style.Font.IsBold = true; sheet.Range["A1"].Style.Font.Size = 13F; //设置第一行行高 sheet.Rows[0].RowHeight = 30F; //创建一个DataTable DataTable dt = new DataTable(); dt.Columns.Add("姓名"); dt.Columns.Add("性别"); dt.Columns.Add("出生日期"); dt.Columns.Add("学历"); dt.Columns.Add("联系电话"); dt.Columns.Add("职务"); dt.Columns.Add("工号"); dt.Rows.Add("王伟", "男", "1990年2月10日", "本科", "13524756854", "销售","0054"); dt.Rows.Add("李宁", "男", "1985年6月8日", "大专", "13259863247", "销售","0055"); dt.Rows.Add("邓家佳", "女", "1989年11月25日", "本科", "13601540352", "销售","0029"); dt.Rows.Add("杜平安", "男", "1978年4月16日", "中专", "13352014060", "保安","0036"); dt.Rows.Add("唐静", "女", "1980年1月21日", "本科", "13635401489", "店长","0010"); //将DataTable数据写入工作表 sheet.InsertDataTable(dt, true, 2, 1, true); //设置该区域行高 sheet.Range["A2:G7"].RowHeight = 15F; //设置第三列及第五列列宽 sheet.Range["A2:G7"].Columns[2].ColumnWidth = 15F; sheet.Range["A2:G7"].Columns[4].ColumnWidth = 15F; //设置网格线样式及颜色 sheet.Range["A2:G7"].BorderAround(LineStyleType.Medium); sheet.Range["A2:G7"].BorderInside(LineStyleType.Thin); sheet.Range["A2:G2"].BorderAround(LineStyleType.Medium); sheet.Range["A2:G7"].Borders.KnownColor = ExcelColors.Black; //保存为.xlsx文件 wb.SaveToFile("创建Excel.xlsx", FileFormat.Version2013); 方法2. 通过连接数据库,将数据库中的数据导出到Excel。参考如下代码: //创建一个workbook对象,默认创建03版的Excel Workbook workbook = new Workbook(); //指定版本信息,07及以上版本最多可以插入1048576行数据 workbook.Version = ExcelVersion.Version2013; //获取第一张sheet Worksheet sheet = workbook.Worksheets[0]; //得到在datatable里的数据 DataTable dt = GetDataTable(); //从第一行第一列开始插入数据,true代表数据包含列名 sheet.InsertDataTable(dt, true, 1, 1); //保存文件 workbook.SaveToFile("ExportDataToExcel.xlsx",ExcelVersion.Version2013); 写在最后:通过以上方法,均需要在VS中引入程序集文件Spire.Xls.dll。以上代码参考自原文1、原文2。
c#中gridview如何同时实现合并表头和排序啊
在GridView的RowCreate事件进行处理
protected void GvProduct_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Footer)
{
TableCellCollection tcHeader = e.Row.Cells; //获取脚模板中的所有列
tcHeader.Clear();
tcHeader.Add(new TableCell());
tcHeader[0].ColumnSpan=4;//跨4列
tcHeader[0].Attributes.Add("align","center");
HtmlGenericControl div = (HtmlGenericControl)this.Page.FindControl("fep");
tcHeader[0].Controls.Add(div);
}
}
GridView双层表头应该怎么做
如果想实现多表头,得自己绘制tablecell,具体的方式就是先添加一个新的TableHeaderCell,然后就是设定其Attributes属性,再者如果要进行单元格合并,那么需要指定其colspan或者是rowspan,以便确定是横向合并还是竖向合并。
前台代码如下:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
CellPadding="4" DataSourceID="SqlDataSource1"
GridLines="Vertical" Width="927px" BackColor="White"
BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px"
onrowcreated="GridView1_RowCreated" ForeColor="Black">
<asp:BoundField DataField="Country" HeaderText="国籍"
SortExpression="Country" />
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString=""
SelectCommand="SELECT [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Country] FROM [Customers]">
如何在gridview中添加复选框?
Gridview里的模版列
上面调用的一个js!有一定的局限!只能选中!不能反选 !
想反选的话你可以在cs里给第一个checkbox加事件!
cs代码:
foreach (GridViewRow sgvRow in this.gvAdsType.Rows)
{
CheckBox cbo = (CheckBox)sgvRow.FindControl("ckbItem");
CRED_AdsEntity objEntity = new CRED_AdsEntity();
if (cbo.Checked)
{
objEntity.sAdID = this.gvAdsType.DataKeys[sgvRow.RowIndex][0].ToString();
delList.Add(objEntity);
}
}
这个是循环谁被选中的!
绑定gridview时一定要把他的datakey绑上!
加分吧!come on!!!
刚接触asp.net,在Gridview中添加一列checkbox...........
这个需要将checkbox添加到GridView的模板列中,然后用下面代码: for (int i = 0; i < GridView1.Rows.Count; i++){ CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1"); if (cbox.Checked == true) { //要做的事 }}上面从i就能知道是第几行,如果要获取表中id,还需要模板列中隐藏id,才好获取。