找回密码
 立即注册

QQ登录

只需一步,快速开始

liujun_sx

论坛元老

8

主题

39

帖子

8118

积分

论坛元老

积分
8118

活字格认证

liujun_sx
论坛元老   /  发表于:2014-7-4 16:41  /   查看:9180  /  回复:8
我使用private Hashtable ImgMap = new Hashtable();来处理,因为是演示,我在ImgMap.Add("01", imageList1.Images[0]); ImgMap.Add("02", imageList1.Images[1]);加了两个测试数据,
c1FlexGrid1.AutoGenerateColumns = false;
c1FlexGrid1.Cols[&quotreview"].ImageMap = ImgMap;
c1FlexGrid1.Cols[&quotreview"].ImageAndText = false;
c1FlexGrid1.Cols[&quotreview"].ImageAlign = C1.Win.C1FlexGrid.ImageAlignEnum.Stretch;
我的图片是01.png大小为180*90的,而我的单元格是180*80
另如何设置数据行的高度,
c1FlexGrid1.Rows[1].Height = 80;
c1FlexGrid1.Rows[2].Height = 80;
c1FlexGrid1.Rows[3].Height = 80;
我这样设觉得很麻烦

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

8 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2014-7-4 16:52:00
沙发
回复 1楼liujun_sx的帖子

你好。
问题我们已经查收,麻烦你给我们发下图片。谢谢。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-7-4 18:45:00
板凳
回复 1楼liujun_sx的帖子

你好,经过测试,这是微软FrameWork的问题。
你的图片添加到HashTable的时候就会处理成小图了,然后你使用ImageAlign.Stretch放大了图片,才会模糊。
你可以使用ImageList添加图片,然后将ImageList的Size设置为你需要的图片尺寸。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
liujun_sx
论坛元老   /  发表于:2014-7-10 10:30:00
地板
图片问题,我已经找处理好了,
另如何设置数据行的高度,
c1FlexGrid1.Rows[1].Height = 80;
c1FlexGrid1.Rows[2].Height = 80;
c1FlexGrid1.Rows[3].Height = 80;
我这样设觉得很麻烦,有啥好办法
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-7-10 11:11:00
5#
回复 4楼liujun_sx的帖子

C1FlexGrid下有设置默认行高的属性,C1FlexGrid.Rows.DefaultSize。
  1. //统一设置默认行高
  2. this.c1FlexGrid1.Rows.DefaultSize = 100;
  3. //设置第一行的行高
  4. c1FlexGrid1.Rows[1].Height = 80;
复制代码


我能问下你最后是如何解决图片问题的?
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
liujun_sx
论坛元老   /  发表于:2014-7-10 11:39:00
6#
private Hashtable ImgMap = new Hashtable();
/// <summary>
        /// 把指定文件夹下的图片加载放到imageList下并对应加入Hashtable
        /// </summary>
        private void InitImageList()
        {
            this.imageList1.Images.Clear();
            this.imageList1.ImageSize = new Size(180, 90);
            this.imageList1.ColorDepth = ColorDepth.Depth32Bit;
            string filePath = AppDomain.CurrentDomain.BaseDirectory.ToString() + @"ResultViewTemp\ImageList";

            var files = Directory.GetFiles(filePath, "*.*", SearchOption.AllDirectories).Where(s => s.EndsWith(".png") || s.EndsWith(".jpg"));
            foreach (string imagefile in files)
            {
                string fileName = System.IO.Path.GetFileNameWithoutExtension(imagefile);
                Image image = Image.FromFile(imagefile);
                imageList1.Images.Add(image);
                ImgMap.Add(fileName, image);
            }

        }

评分

参与人数 1金币 +200 收起 理由
Alice + 200 提出自己的解决方案。

查看全部评分

回复 使用道具 举报
liujun_sx
论坛元老   /  发表于:2014-7-10 11:43:00
7#
我觉得绑定图片还是比较麻烦,必须通过Hashtable 来绑定吗
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-7-10 12:20:00
8#
回复 7楼liujun_sx的帖子

我们的官网示例中,使用ImageList直接绑定图片。
参考代码如下:
  1. Column imageCol = c1FlexGrid1.Cols[_imageCol];
  2. imageCol.Caption = &quot;图片&quot;;
  3. imageCol.DataType = typeof(Image);
  4. imageCol.ImageAlign = ImageAlignEnum.CenterCenter;
  5. imageCol.ImageAndText = false;
  6. for (int i = 1; i &lt; c1FlexGrid1.Rows.Count; i++)
  7. {
  8.      //Load image data
  9.      c1FlexGrid1[i, _imageCol] = imageList1.Images[i - 1];
  10. }
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-7-10 12:23:00
9#
private Hashtable ImgMap = new Hashtable();
/// <summary>
        /// 把指定文件夹下的图片加载放到imageList下并对应加入Hashtable
        /// </summary>
        private void InitImageList()......
liujun_sx 发表于 2014-7-10 11:39:00


提出自己的解决方案,奖励200金币。
参考:《GCDN论坛金币奖励金榜》
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部