GridView使用大全攻略(10)

2019-08-31 19:29

Export(\学生成绩报表.xls\ }

private void Export(string FileType, string FileName) {

Response.Charset = \

Response.ContentEncoding = System.Text.Encoding.UTF7;

Response.AppendHeader(\HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString()); Response.ContentType = FileType; this.EnableViewState = false;

StringWriter tw = new StringWriter();

HtmlTextWriter hw = new HtmlTextWriter(tw); GridView1.RenderControl(hw); Response.Write(tw.ToString()); Response.End(); }

//如果没有下面方法会报错类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内

public override void VerifyRenderingInServerForm(Control control) { }

还有由于是文件操作所以要引入名称空间IO和Text 后台代码: using System; using System.Data;

using System.Configuration; using System.Web;

using System.Web.Security; using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.Drawing; using System.IO; using System.Text;

public partial class Default7 : System.Web.UI.Page {

SqlConnection sqlcon;

SqlCommand sqlcom;

string strCon = \北风贸易;Uid=sa;Pwd=sa\ protected void Page_Load(object sender, EventArgs e) {

if (!IsPostBack) {

bind(); } }

public void bind() {

string sqlstr = \飞狐工作室\ sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon); DataSet myds = new DataSet(); sqlcon.Open();

myda.Fill(myds, \飞狐工作室\ GridView1.DataSource = myds;

GridView1.DataKeyNames = new string[] { \身份证号码\ GridView1.DataBind(); sqlcon.Close(); }

protected void Button1_Click(object sender, EventArgs e) {

Export(\学生成绩报表.xls\ }

private void Export(string FileType, string FileName) {

Response.Charset = \

Response.ContentEncoding = System.Text.Encoding.UTF7;

Response.AppendHeader(\HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString()); Response.ContentType = FileType; this.EnableViewState = false;

StringWriter tw = new StringWriter();

HtmlTextWriter hw = new HtmlTextWriter(tw); GridView1.RenderControl(hw);

Response.Write(tw.ToString()); Response.End(); }

public override void VerifyRenderingInServerForm(Control control) { } } 前台:

BackColor=\BorderStyle=\>

读取Excel数据的代码:这个很简单的 private DataSet CreateDataSource()

{

string strCon;

strCon = \Server.MapPath(\ OleDbConnection olecon = new OleDbConnection(strCon);

OleDbDataAdapter myda = new OleDbDataAdapter(\[Sheet1$]\

DataSet myds = new DataSet(); myda.Fill(myds); return myds; }

protected void Button1_Click(object sender, EventArgs e) {

GridView1.DataSource = CreateDataSource(); GridView1.DataBind(); }

如果GridView存在模板列,其中包含子控件,例如CheckBox等,导出EXCEL后就会出现该区域的不规律。所以要对模板列单独处理(转载)

public static void PrepareGridViewForExport(Control gv)//模式化特殊元素 flashcong

{

LinkButton lb = new LinkButton(); Literal l = new Literal(); string name = String.Empty;

for (int i = 0; i < gv.Controls.Count; i++) {

if (gv.Controls[i].GetType() == typeof(LinkButton)) {

l.Text = (gv.Controls[i] as LinkButton).Text; gv.Controls.Remove(gv.Controls[i]);

gv.Controls.AddAt(i, l);

}

else if (gv.Controls[i].GetType() == typeof(DropDownList)) {

l.Text = (gv.Controls[i] as DropDownList).SelectedItem.Text; gv.Controls.Remove(gv.Controls[i]); gv.Controls.AddAt(i, l);

}

{

l.Text = (gv.Controls[i] e\

gv.Controls.Remove(gv.Controls[i]); gv.Controls.AddAt(i, l);

}

{

l.Text = \ gv.Controls.Remove(gv.Controls[i]); gv.Controls.AddAt(i, l); }

{

PrepareGridViewForExport(gv.Controls[i]); }

}

}

else if (gv.Controls[i].GetType() == typeof(CheckBox)) as CheckBox).Checked ? \else if (gv.Controls[i].GetType() == typeof(ImageButton)) 图片\

if (gv.Controls[i].HasControls())


GridView使用大全攻略(10).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017-2018学年度最新苏教版小学五年级数学上册期末试卷及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: