找回密码
 立即注册

QQ登录

只需一步,快速开始

hyqangel

初级会员

47

主题

152

帖子

373

积分

初级会员

积分
373

活字格认证微信认证勋章

hyqangel
初级会员   /  发表于:2014-1-16 11:31  /   查看:6901  /  回复:8
问题见标题

     麻烦提供代码

8 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2014-1-16 15:46:00
沙发
回复 1楼hyqangel的帖子

可以通过代码实现,代码较长:

  1. private void AddPicture(FileInfo fileInfo, int startRow, int startColumn)
  2.         {
  3.             if (fileInfo == null)
  4.             {
  5.                 return;
  6.             }
  7.             BitmapImage temp = new BitmapImage();
  8.             temp.SetSource(fileInfo.OpenRead());
  9.             temp.CreateOptions = BitmapCreateOptions.None;
  10.             this.gcSpreadSheet1.ActiveSheet.AddPicture(this.CreatePictureName(), temp, startRow, 0.0, startColumn, 0.0, temp.PixelWidth, temp.PixelHeight);
  11.         }
复制代码


代码路径:C:\Program Files (x86)\ComponentOne\Spread WPF-Silverlight\7.40.20132.1\Silverlight\Samples\SpreadSheetDemoExplorer.html
spread_demo_picture.gif
回复 使用道具 举报
hyqangel
初级会员   /  发表于:2014-1-17 15:13:00
板凳
如何通过代码来判断单元格是否有图片 ?
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-1-17 17:01:00
地板
回复 3楼hyqangel的帖子

上面的添加图片,不是添加到单元格里面的,故无法判断是否在单元格内。
回复 使用道具 举报
hyqangel
初级会员   /  发表于:2014-1-21 13:58:00
5#
如果不是添加到单元格中的话,addpicture中的row和column等参数有何用途
回复 使用道具 举报
hyqangel
初级会员   /  发表于:2014-1-21 15:11:00
6#
插入到单元格中的图片不能随表格一阵存储,同时另存为excel文件后图片丢失
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-1-21 16:53:00
7#
回复 6楼hyqangel的帖子

您好,2个问题回复如下:
问题1: addPicture函数
        SilverLight中无法添加图片到单元格里面,只能添加图片到一个新的“图层”。 Row、Column用来定位的,如可添加到第5行、5列开始的地方。
      详细说明,可参阅技术手册:GrapeCity.Windows.SpreadSheet.Data Namespace > Worksheet Class : AddPicture Method

问题2: 可导出Excel
    但是只能保存为2007格式+,参考代码如下:

  1. private void Button_Click_1(object sender, RoutedEventArgs e)
  2.         {
  3.             SaveFileDialog saveFileDialog = new SaveFileDialog();
  4.             saveFileDialog.Filter = "Excel File (.xlsx)|*.xlsx";
  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.                     fileFormat = ExcelFileFormat.XLSX;

  13.                 this.gcSpreadSheet1.SaveExcel(stream, fileFormat, ExcelSaveFlags.SaveBothCustomRowAndColumnHeaders);

  14.                 stream.Close();
  15.             }
  16.         }
  17.   
复制代码
回复 使用道具 举报
hyqangel
初级会员   /  发表于:2014-1-22 15:22:00
8#
经测试,ok 谢谢
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-1-22 16:16:00
9#
回复 8楼hyqangel的帖子

客气了, 也同样谢谢您的反馈
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部