public void Bind(System.Data.DataTable dt)
    {
        if (dt == null)
        {
            return;
        }
        else
        {
            #region 操作excel
            Excel.Workbook xlWorkBook;
            Excel.Worksheet xlWorkSheet;
            xlWorkBook = new Excel.Application().Workbooks.Add(Type.Missing);
            xlWorkBook.Application.Visible = false;
            xlWorkSheet = (Excel.Worksheet)xlWorkBook.Sheets[1];
            #endregion
            //设置标题
            int rowIndex = 1;       //行
            int columnIndex = 0;    //列
            //将DataTable的列名导入Excel表第一行
            foreach (DataColumn dc in dt.Columns)
            {
                columnIndex++;
                xlWorkSheet.Cells[rowIndex, columnIndex] = dc.ColumnName;
                //定义标头的宽度
                ((Excel.Range)xlWorkSheet.Cells[columnIndex, 11]).ColumnWidth = 10;
                ((Excel.Range)xlWorkSheet.Cells[columnIndex, 12]).ColumnWidth = 10;
                ((Excel.Range)xlWorkSheet.Cells[columnIndex, 15]).ColumnWidth = 10;
                ((Excel.Range)xlWorkSheet.Cells[columnIndex, 23]).ColumnWidth = 15;
            }
            //将DataTable中的数据导入Excel中
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                rowIndex++;
                xlWorkSheet.Cells[rowIndex, 1] = dt.Rows[i]["uid"].ToString();
                xlWorkSheet.Cells[rowIndex, 2] = dt.Rows[i]["FRID"].ToString();
                xlWorkSheet.Cells[rowIndex, 3] = dt.Rows[i]["name"].ToString();
                xlWorkSheet.Cells[rowIndex, 4] = dt.Rows[i]["Age"].ToString();
                xlWorkSheet.Cells[rowIndex, 5] = dt.Rows[i]["Address"].ToString();
                xlWorkSheet.Cells[rowIndex, 6] = dt.Rows[i]["Aliases"].ToString();
                xlWorkSheet.Cells[rowIndex, 7] = dt.Rows[i]["CrimeName"].ToString();
                xlWorkSheet.Cells[rowIndex, 8] = dt.Rows[i]["Diploma"].ToString();
                xlWorkSheet.Cells[rowIndex, 9] = dt.Rows[i]["Nation"].ToString();
                xlWorkSheet.Cells[rowIndex, 10] = dt.Rows[i]["ImprisonTerm"].ToString();
                xlWorkSheet.Cells[rowIndex, 11] = Convert.ToDateTime(dt.Rows[i]["StartImprison"].ToString()).ToString("yyyy-MM-dd");
                xlWorkSheet.Cells[rowIndex, 12] = Convert.ToDateTime(dt.Rows[i]["StopImprison"].ToString()).ToString("yyyy-MM-dd");
                xlWorkSheet.Cells[rowIndex, 13] = dt.Rows[i]["PreMetier"].ToString();
                xlWorkSheet.Cells[rowIndex, 14] = dt.Rows[i]["Wedlock"].ToString();
                xlWorkSheet.Cells[rowIndex, 15] = Convert.ToDateTime(dt.Rows[i]["EnterPrisonTime"].ToString()).ToString("yyyy-MM-dd");
                xlWorkSheet.Cells[rowIndex, 16] = dt.Rows[i]["DelictTime"].ToString();
                xlWorkSheet.Cells[rowIndex, 17] = dt.Rows[i]["NativePlace"].ToString();
                xlWorkSheet.Cells[rowIndex, 18] = dt.Rows[i]["Religion"].ToString();
                xlWorkSheet.Cells[rowIndex, 19] = dt.Rows[i]["RewardAndPunish"].ToString();
                xlWorkSheet.Cells[rowIndex, 20] = dt.Rows[i]["Commute"].ToString();
                xlWorkSheet.Cells[rowIndex, 21] = dt.Rows[i]["BodyStatus"].ToString();
                xlWorkSheet.Cells[rowIndex, 22] = dt.Rows[i]["LinkMan"].ToString();
                xlWorkSheet.Cells[rowIndex, 23] = dt.Rows[i]["ContactTel"].ToString();
                //
                string filename = Server.MapPath("1.gif");
                if (dt.Rows[i]["Photo"] == DBNull.Value)
                {
                    xlWorkSheet.Cells[rowIndex, 24] = "暂无图片!";
                }
                else
                {
                    byte[] filedata = (byte[])dt.Rows[i]["Photo"];
                    System.IO.MemoryStream ms = new System.IO.MemoryStream(filedata);
                    System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
                    img.Save(filename);
                    //int rangeindex = 16 * i + 8;
                    //string rangename = "D" + rangeindex;
                    //Excel.Range range = xlWorkSheet.get_Range("A8", Type.Missing);
                    //range.Select();
                    Excel.Pictures pict = (Excel.Pictures)xlWorkSheet.Pictures(Type.Missing);
                    pict.Insert(filename, Type.Missing);
                    
                    // xlWorkSheet.Cells[rowIndex, 24];
                }
                xlWorkSheet.Cells[rowIndex, 25] = dt.Rows[i]["AdminID"].ToString();
                xlWorkSheet.Cells[rowIndex, 26] = dt.Rows[i]["AssessmentID"].ToString();
                xlWorkSheet.Cells[rowIndex, 27] = dt.Rows[i]["PersonnelID"].ToString();
            }
            #region 保存excel文件
            string filePath = Server.MapPath("ReadExcel") + "" + System.DateTime.Now.ToString().Replace(":", "") + "导出.xls";
            xlWorkBook.SaveAs(filePath, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
            xlWorkBook.Application.Quit();
            xlWorkSheet = null;
            xlWorkBook = null;
            GC.Collect();
            System.GC.WaitForPendingFinalizers();
            #endregion
            #region 导出到客户端
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            Response.AppendHeader("content-disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode("导出", System.Text.Encoding.UTF8) + ".xls");
            Response.ContentType = "Application/excel";
            Response.WriteFile(filePath);
            Response.End();
            #endregion
            //结束进程
            EndExcel("EXCEL");
        }    }这样导出是可以。但是图片我想吧固定大小,放到固定的位置。求方法。求代码。
搞了1天了,都没弄出来。郁闷。