当前位置:编程学习 > C#/ASP.NET >>

又被催了 新手求助大家 gridview导到excel后存在服务器问题已解决 可是怎么让客户端不提示小框呢?

--------------------编程问答-------------------- 还有个问题,由于gridview里有checkbox,保存的excel文件用office2003打开后屏幕闪烁的非常厉害,而且看不到checkbox,用wps2012打开后不闪烁,可是也没有checkbox呀 --------------------编程问答-------------------- 麻烦各位大侠指教了 --------------------编程问答-------------------- 新人求指教 --------------------编程问答-------------------- 你上面的代码就是向客户端输送一个Excel文件的,而不是直接把它保存在服务端
你用.Response这个对象注定不符需求 --------------------编程问答--------------------
引用 4 楼 dongxinxi 的回复:
你上面的代码就是向客户端输送一个Excel文件的,而不是直接把它保存在服务端
你用.Response这个对象注定不符需求


System.IO.File.WriteAllText(FilePath, tw.ToString());将excel文件保存在服务器指定位置已经实现了啊,
Response是对客户端的响应,我现在只是想不让客户端弹出小框 【打开】【保存】【取消】,没有办法吗?
--------------------编程问答--------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml.Linq;
using Excel = Microsoft.Office.Interop.Excel;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Interop.Excel;
using System.Reflection;

          //创建Application对象             
            Excel.Application xApp = new Excel.ApplicationClass();
            xApp.Visible = true;
            //得到WorkBook对象, 下面的是打开已有的文件 
            Excel.Workbook xBook = xApp.Workbooks._Open(@"D:\Tomin.xls",
            Missing.Value, Missing.Value, Missing.Value, Missing.Value
            , Missing.Value, Missing.Value, Missing.Value, Missing.Value
            , Missing.Value, Missing.Value, Missing.Value, Missing.Value);
           

            //指定要操作的Sheet,两种方式: 
            Excel.Worksheet xSheet = (Excel.Worksheet)xBook.Sheets[1];
            //Excel.Worksheet xSheet=(Excel.Worksheet)xApp.ActiveSheet; 

            //读取数据,通过Range对象 
            Excel.Range rng1 = xSheet.get_Range("A1", Type.Missing);// Type.Missing 也可以用 Missing.Value
            Console.WriteLine(rng1.Value2);

            //读取,通过Range对象,但使用不同的接口得到Range 
            Excel.Range rng2 = (Excel.Range)xSheet.Cells[3, 1];
            Console.WriteLine(rng2.Value2);

            //写入数据 
            Excel.Range rng3 = xSheet.get_Range("C6", Missing.Value);
            rng3.Value2 = "Hello";
            rng3.Interior.ColorIndex = 6; //设置Range的背景色 

            //保存方式一:保存WorkBook 
            xBook.SaveAs(@"D:\Tomin.xls",
            Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
            Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value,
            Missing.Value, Missing.Value);

            //保存方式二:保存WorkSheet 
            xSheet.SaveAs(@"D:\Tomin.xls",
            Missing.Value, Missing.Value, Missing.Value, Missing.Value,
            Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

            //保存方式三 
            xBook.Save();
            // 保存方式四
            xBook.Close(true, @"D:\Tomin.xls", Missing.Value);    

            xSheet = null;
            xBook = null;
            xApp.Quit(); //这一句是非常重要的,否则Excel对象不能从内存中退出 
            xApp = null;
--------------------编程问答--------------------
引用 6 楼 maco_wang 的回复:
C# code

还是使用了COM组件啊,主要是我没用COM组件已经把gridview保存到excel后存在服务器指定目录已经实现了啊,只是想不让客户端弹出小框 【打开】【保存】【取消】,必须用COM组件才行吗? --------------------编程问答-------------------- Application.DisplayAlerts = false//取消EXCEL默认的一切提示
这样不行??? --------------------编程问答--------------------
引用 8 楼 wosizy 的回复:
Application.DisplayAlerts = false//取消EXCEL默认的一切提示
这样不行???

 Microsoft.Office.Interop.Excel.Application Application = new Microsoft.Office.Interop.Excel.Application();
Application.DisplayAlerts = false//取消EXCEL默认的一切提示
这样不行啊,我没用到excel的COM --------------------编程问答--------------------
引用 1 楼 l840828 的回复:
还有个问题,由于gridview里有checkbox,保存的excel文件用office2003打开后屏幕闪烁的非常厉害,而且看不到checkbox,用wps2012打开后不闪烁,可是也没有checkbox呀

保存前设置checkbox的visible等于false。 --------------------编程问答-------------------- 客户端不提示的话,比较复杂,可按excel的文件格式,按写文件的方式直接保存成excel数据文件。 --------------------编程问答--------------------
引用 10 楼 happytonice 的回复:
引用 1 楼 l840828 的回复:

还有个问题,由于gridview里有checkbox,保存的excel文件用office2003打开后屏幕闪烁的非常厉害,而且看不到checkbox,用wps2012打开后不闪烁,可是也没有checkbox呀

保存前设置checkbox的visible等于false。

恩,果然不闪了
--------------------编程问答-------------------- 如果不需要复选框那一列 直接给他这一列visible等于false。

那个提示框我度娘和Go了下,好像都是用的组件解决的 详见:http://topic.csdn.net/t/20060711/16/4873695.html
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,