[17.1] 导出excel的时候 列头和内容显示在了不同的列
Operator Labor列头显示在了K列,对应的金额显示在了L列。
同样的 Service Charge显示在了N列,对应的金额显示在了O列。
设计器里所有控件都是紧靠的,中间没有留任何空隙。
我这边复现出您的这种现象,
是设计的时候的文本的尺寸导致的,
我看你代码里面是不是重新设置label和textbox的宽度了:
新建的空项目,导出excel可以重现问题 本帖最后由 Eden.Sun 于 2023-11-27 10:39 编辑
XiaoL 发表于 2023-10-24 15:02
新建的空项目,导出excel可以重现问题
您这个项目。我这边运行不了。而且您的报表也是空的,您把您的报表上传,我们看一下把。 这个是报表文件,谢谢!
从您的代码看,您使用的是区域报表,您的表格是用标签和文本框拼的,
这种情况导出excel的时候,相当于一个个文本框,所以格式就乱了,
您仔细看您的截图,Excel文件中并不是把一个数据导出到两个单元格,而是合并单元格了。对应数据的标题所在的单元格没有合并,所以就会有这个问题。
您看是不是可以在代码中设置标签和文本框的尺寸保持他们的尺寸一致,看是不是能解决这个问题。
或者如果可以的话,您用rdl报表或者页面报表试试呢。
@Eden.Sun, 我上传的报表文件就是这个简单的报表:
里面有两个Label和两个TextBox。每列对应的Label和TextBox的宽度一致,起始位置x和y也一致。按道理他们导出后应该在同一列里。下面是我导出后的结果:
这个特殊的地方是他们的alignment的是right
Label有换行,显示了两行 @Eden.Sun, thanks for checking!
CS 代码里的内容是设计器自动生成的。设计器拖好控件后没有其他额外代码去设置控件尺寸。
另外您提到的控件尺寸问题,在我的报表里列头Label的宽度和details里Textbox的宽度是一致的,起始位置也一致。就是Label是折行了,高度会比Texbox要高一些。
在您的报表里,你可以把标签1和编号1控件的尺寸设置成一样的。控件的Alignment都设置成Right。增加标签1的字符串长度,让它折行,显示两行内容。这样应该就能重现问题了。
我复现出来了您的问题,你看我的回复的第一张图,
而且也和您说过,并不是您的数据和标题显示在了不同列,是导出的时候是对单元格进行了合并操作,
您设置了靠右对齐,所以,数据在合并之后,显示在了合并饿的单元格的右侧,而默认是左对齐,所以你的标题数据靠左显示,给您的视觉效果是显示在不同列,
您可以统一一下数据的对齐方式,统一左对齐或者右对齐,
页:
[1]