王健 发表于 2022-5-2 19:49:42

C1FlexGrid的Node节点图片能不能控制显示大小


Node显示图片后,如果图片大一点的话,显示效果很差。有没有可以控制图片显示大小一致的方法?

Richard.Ma 发表于 2022-5-2 19:49:43

那这个只能是自己手动去drawImage了,比如在你说的DBImages中,
                                        var image = LoadImage(flex as byte[]);
                                        e.Graphics.DrawImage(image, e.Bounds.X,e.Bounds.Y, image.Width/image.Height*e.Bounds.Height, e.Bounds.Height);
                                        e.Text = null;




或者你确实是要设置e.Image的话,可以先把图片像素缩放到合适高度,再设置

Richard.Ma 发表于 2022-5-5 09:16:28

这个目前确实只能设置Image属性来指定图片,建议选中尺寸合适的图片来显示

王健 发表于 2022-5-10 16:15:16

我觉得是软件不完善的地方。我看了一下,样式里面有一个ImageAlign属性,是可以设置ImageAlignEnum.Scale值的,可以让图片缩放在单元格内显示,可惜缩放后是居中显示的。你们看看能不能再完善完善,添加一个类似ScaleLeftCenter这种,让图片可以有一个比较好的显示方式。
this.Cols.ImageAlign = ImageAlignEnum.Scale;

Richard.Ma 发表于 2022-5-10 17:09:09

你试一下这样设置 行不行

c1FlexGrid2.Cols.ImageAlign =ImageAlignEnum.LeftCenter| ImageAlignEnum.Scale ;

王健 发表于 2022-5-10 17:52:04

Enum类型决定他肯定不能这样用呀。

Richard.Ma 发表于 2022-5-10 18:02:32

我这里测试了一下,实际上并不需要控制大小,只需要设置ImageAlignEnum.LeftCenter后,默认就是缩放显示的

箭头所指的图片就是一个很大的图片



王健 发表于 2022-5-11 09:04:40

我的版本是4.5.20212.513,你是用最新版本测试的吗?

Richard.Ma 发表于 2022-5-11 09:35:22

你好是发我一个demo看看我来测试一下,我这边图片是用在了正常的列里面,可能和你的情况还有点不同

王健 发表于 2022-5-11 09:57:00


用官方Demo里面的DBImages这个示例,将属性改一下就可以看到效果了。
页: [1] 2
查看完整版本: C1FlexGrid的Node节点图片能不能控制显示大小