找回密码
 立即注册

QQ登录

只需一步,快速开始

roger.wang
社区贡献组   /  发表于:2014-5-16 10:43  /   查看:5360  /  回复:0
问题描述:双击单元格,然后弹出图片选择对话框,然后把图片插入到该单元格。
问题解答:可以通过CellDoubleClick事件来捕获双击Spread事件,然后通过ImageCellType插入选择图片。
关键代码:
?

  1.         ///<summary>
  2.         /// 添加 ImageCellType
  3.         /// </summary>
  4.         private void AddCellType()
  5.         {
  6.             FarPoint.Win.Spread.CellType.ImageCellType imgct = new FarPoint.Win.Spread.CellType.ImageCellType();

  7.             System.Drawing.Image image = System.Drawing.Image.FromFile("Tulips.jpg");
  8.             imgct.Style = FarPoint.Win.RenderStyle.Stretch;
  9.             imgct.TransparencyColor = Color.Black;
  10.             imgct.TransparencyTolerance = 20;
  11.             fpSpread1.Sheets[0].Columns[1, 2].Width = 100;
  12.             fpSpread1.Sheets[0].Rows[1, 1].Height = 50;

  13.             fpSpread1.Sheets[0].Cells[1, 1].CellType = imgct;

  14.             fpSpread1.Sheets[0].Cells[1, 1].Value = image;

  15.             this.fpSpread1.CellDoubleClick += new FarPoint.Win.Spread.CellClickEventHandler(fpSpread1_CellDoubleClick);
  16.         }

  17.         //双击弹出选择对话框
  18.         private void fpSpread1_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
  19.         {
  20.             if (fpSpread1.ActiveSheet.ActiveCell.CellType is FarPoint.Win.Spread.CellType.ImageCellType)
  21.             {
  22.                 OpenFileDialog dlgOpen = new OpenFileDialog();
  23.                 dlgOpen.Filter = "*.jpg|*.jpg";
  24.                 if (dlgOpen.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  25.                 {
  26.                     fpSpread1.ActiveSheet.ActiveCell.Value = System.Drawing.Image.FromFile(dlgOpen.FileName);
  27.                 }
  28.             }
  29.         }
  30.    
复制代码


示例下载:点击下载

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部