找回密码
 立即注册

QQ登录

只需一步,快速开始

swejet 悬赏达人认证 活字格认证
论坛元老   /  发表于:2014-12-6 11:28  /   查看:6966  /  回复:5
在导出时使用SaveExcel报错

报错内容如下
{System.NullReferenceException: 未将对象引用设置到对象的实例。
   位于 GrapeCity.Windows.SpreadSheet.UI.GcSpreadSheet.SaveExcel(Stream stream, ExcelFileFormat format, ExcelSaveFlags saveFlags, String password)
   位于 GrapeCity.Windows.SpreadSheet.UI.GcSpreadSheet.SaveExcel(Stream stream, ExcelFileFormat format, ExcelSaveFlags saveFlags)
   位于 Numpod.App.DX.ViewModels.MainPageVM.SleadingOutCommand_Execute(Object param)
   位于 Numpod.App.DX.Commands.RelayCommand`1.Execute(Object parameter)
   位于 DevExpress.Xpf.Bars.BarItem.ExecuteCommand()
   位于 DevExpress.Xpf.Bars.BarItem.<>c__DisplayClass5c.<OnItemClick>b__5b()
   位于 DevExpress.Xpf.Bars.BarItem.OnItemClick(BarItemLink link)
   位于 DevExpress.Xpf.Bars.BarItemLink.OnClick()
   位于 DevExpress.Xpf.Bars.BarItemLinkControl.OnClick()
   位于 DevExpress.Xpf.Bars.BarButtonItemLinkControl.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   位于 System.Windows.Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e)
   位于 MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName, UInt32 flags)}

5 个回复

倒序浏览
swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2014-12-6 11:31:00
沙发
我的代码如下
QQ图片20141206113022.png
回复 使用道具 举报
swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2014-12-6 11:33:00
板凳
之前一直都好使,最近就不好使了
QQ图片20141206112326.jpg (71.4 KB, 下载次数: 522)
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-8 16:38:00
地板
回复 3楼swejet的帖子

我们在线Demo用的就是以下代码,导出正常:

  1. private void SaveFile(object sender, RoutedEventArgs e)
  2.         {
  3.             SaveFileDialog saveFileDialog = new SaveFileDialog();
  4.             saveFileDialog.Filter = &quot;Excel File (.xls,.xlsx)|*.xls; *.xlsx&quot;;
  5.             saveFileDialog.FilterIndex = 1;
  6.             bool? userClickOk = saveFileDialog.ShowDialog();
  7.             if (userClickOk == true)
  8.             {
  9.                 var stream = saveFileDialog.OpenFile();
  10.                 var fileName = saveFileDialog.SafeFileName;
  11.                 var fileFormat = ExcelFileFormat.XLS;
  12.                 if (fileName.EndsWith(&quot;.xlsx&quot;))
  13.                     fileFormat = ExcelFileFormat.XLSX;
  14.                 else
  15.                     fileFormat = ExcelFileFormat.XLS;
  16.    
  17.                 this.gcSpreadSheet1.SaveExcel(stream, fileFormat, GetSaveFlag());

  18.                 stream.Close();
  19.             }
复制代码


Demo链接:
http://demo.gcpowertools.com.cn/ ... tml#ExcelIE/ExcelIE

如果您新建立一个工程,去除 Dev 的控件,只拖拽 Spread 测试,还会出现这个问题吗?
回复 使用道具 举报
swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2014-12-10 18:59:00
5#
回复 4楼iceman的帖子

和DEV的控件冲突了,去掉DEV的控件就能用,我再弄别的控件吧
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-11 13:33:00
6#
回复 5楼swejet的帖子

好的,感谢您的反馈。

我们公司的 ComponentOne 控件功能和 DEV 基本相同,而且提供中文技术支持,您可以了解下:
http://www.gcpowertools.com.cn/p ... dio_silverlight.htm
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部