DataGrid导入Excel
来源:互联网 发布:数据库理论试题及答案 编辑:程序博客网 时间:2024/04/19 14:29
参数为DataGrid的ID
---以上适合"自动生成列"的DataGrid. ()
对于DataGrid的模板列,除了上面代码外,还要加些东西.
完整代码:
文章来源于 http://www.cnblogs.com/zhangzs8896 版权归原作者所有
public void ToExcel(System.Web.UI.Control ctl)
{
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Excel.xls");
HttpContext.Current.Response.Charset ="UTF-8";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType ="application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
ctl.Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter() ;
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
ctl.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
}
{
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Excel.xls");
HttpContext.Current.Response.Charset ="UTF-8";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType ="application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
ctl.Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter() ;
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
ctl.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
}
---以上适合"自动生成列"的DataGrid. ()
对于DataGrid的模板列,除了上面代码外,还要加些东西.
完整代码:
private static void ClearControls(Control control)
{
for (int i=control.Controls.Count -1; i>=0; i--)
{
ClearControls(control.Controls[i]);
}
if (!(control is TableCell))
{
if (control.GetType().GetProperty("SelectedItem") != null)
{
LiteralControl literal = new LiteralControl();
control.Parent.Controls.Add(literal);
try
{
literal.Text = (string)control.GetType().GetProperty("SelectedItem").GetValue(control,null);
}
catch
{
}
control.Parent.Controls.Remove(control);
}
else
if (control.GetType().GetProperty("Text") != null)
{
LiteralControl literal = new LiteralControl();
control.Parent.Controls.Add(literal);
literal.Text = (string)control.GetType().GetProperty("Text").GetValue(control,null);
control.Parent.Controls.Remove(control);
}
}
return;
}
{
for (int i=control.Controls.Count -1; i>=0; i--)
{
ClearControls(control.Controls[i]);
}
if (!(control is TableCell))
{
if (control.GetType().GetProperty("SelectedItem") != null)
{
LiteralControl literal = new LiteralControl();
control.Parent.Controls.Add(literal);
try
{
literal.Text = (string)control.GetType().GetProperty("SelectedItem").GetValue(control,null);
}
catch
{
}
control.Parent.Controls.Remove(control);
}
else
if (control.GetType().GetProperty("Text") != null)
{
LiteralControl literal = new LiteralControl();
control.Parent.Controls.Add(literal);
literal.Text = (string)control.GetType().GetProperty("Text").GetValue(control,null);
control.Parent.Controls.Remove(control);
}
}
return;
}
public static void OutPutExcel(DataGrid dgrd, string v_FileName)
{
try
{
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename="+v_FileName+".xls");
HttpContext.Current.Response.Charset ="gb2312";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType ="application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
dgrd.Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
ClearControls(dgrd);
dgrd.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
}
catch(Exception e)
{
throw e;
}
}
{
try
{
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename="+v_FileName+".xls");
HttpContext.Current.Response.Charset ="gb2312";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType ="application/ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
dgrd.Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
ClearControls(dgrd);
dgrd.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
}
catch(Exception e)
{
throw e;
}
}
文章来源于 http://www.cnblogs.com/zhangzs8896 版权归原作者所有
- DataGrid数据导入Excel
- DataGrid数据导入Excel
- DataGrid数据导入Excel
- DataGrid数据导入Excel
- DataGrid导入Excel
- DataGrid数据导入Excel
- excel数据导入到datagrid
- 导出导入Excel(DataSet,DataGrid)
- 导出导入Excel(DataSet,DataGrid)
- 导出导入Excel(DataSet,DataGrid)
- 导出导入Excel(DataSet,DataGrid)
- excel数据导入到datagrid
- Excel数据导入DataGrid中
- 关于DataGrid 数据导入Excel乱码
- 将datagrid数据导入到excel(转载)
- 将DataGrid的数据直接导入Excel
- 将EXCEL 数据导入到 DataGrid中
- DataGrid数据导入excel或word
- C#常用函数及方法集
- 披着羊皮的狼
- C#的四中排序方法
- C#处理文本文件
- 接到LZZ的电话,心情很糟糕.
- DataGrid导入Excel
- 跨多列,多行表头的DataGrid
- .Net中的DBNull类型
- 分页控件[陕北吴旗娃的AspNetPager控件]
- 给定一个字段的值,查询它所处的表以及字段
- ##---玩死小泉--##
- 一个文件上传与下载的UserControl
- 一个略有特殊的Update的语句.
- 今天下午很郁闷