矩形中的 s-s-rS 图像/texboxes 不显示

Posted

技术标签:

【中文标题】矩形中的 s-s-rS 图像/texboxes 不显示【英文标题】:s-s-rS images/ texboxes in rectangles don't display 【发布时间】:2013-08-29 18:26:51 【问题描述】:

我正在 s-s-rS 2008 中创建一个简单的报表。我从复制现有报表定义开始,并对其进行了修改以满足我的需要。我在 Visual Studio Ultimate 2012 中工作,在 ASP.NET MVC 项目中使用 C#。

我有两个矩形,Rectangle1 和 Rectangle2。 Rectangle1 来自原始报告并显示得很好,我只是重新排列了其中的 ReportItems。但是,Rectangle2 没有显示在生成的报告中。我在设计器中创建它并将现有图像剪切/粘贴到其中。除了外部图像,Rectangle2 还包含一个带有静态值的文本框。

这是我尝试过的:

已验证我的数据已通过且正确无误。 验证了所有相关表达式。 已验证我请求的图像存在。 删除了收缩/增长参数。 已验证未设置条件显示要求。 创建了一个带有文本框和图像的全新矩形(不显示)。 比较了 Rectangle1 和 Rectangle2 之间的 XML。 比较了 Rectangle1 和之间的参数值(在设计器中) Rectangle2 及其所有子元素。 调整了 Z-index 参数。

我在网上找不到任何相关内容。任何地方。纳达。压缩。我没主意了。

请指点我正确的方向。


这是一些 XML:

<Rectangle Name="Rectangle1">
    <ReportItems>
      <Image Name="GHS_1">
        <Source>External</Source>
        <Value>="file:///" + Parameters!AppPath.Value + Parameters!GHSPictograms.Value(0)</Value>
        <MIMEType>image/png</MIMEType>
        <Sizing>FitProportional</Sizing>
        <Top>0.45312in</Top>
        <Left>0.17958in</Left>
        <Height>1.56in</Height>
        <Width>1.56in</Width>
        <Visibility>
          <Hidden>=Parameters!GHSPictograms.Value(0) = ""</Hidden>
        </Visibility>
        <Style>
          <Border>
            <Style>None</Style>
          </Border>
        </Style>
      </Image>
      <Textbox Name="Textbox1">
        <CanGrow>true</CanGrow>
        <KeepTogether>true</KeepTogether>
        <Paragraphs>
          <Paragraph>
            <TextRuns>
              <TextRun>
                <Value xml:space="preserve"> </Value>
                <Style />
              </TextRun>
            </TextRuns>
            <Style />
          </Paragraph>
        </Paragraphs>
        <rd:DefaultName>Textbox1</rd:DefaultName>
        <Top>2.0521in</Top>
        <Left>3.91688in</Left>
        <Height>0.25in</Height>
        <Width>0.05208in</Width>
        <ZIndex>4</ZIndex>
        <Style>
          <Border>
            <Style>None</Style>
          </Border>
          <PaddingLeft>2pt</PaddingLeft>
          <PaddingRight>2pt</PaddingRight>
          <PaddingTop>2pt</PaddingTop>
          <PaddingBottom>2pt</PaddingBottom>
        </Style>
      </Textbox>
    </ReportItems>
    <KeepTogether>true</KeepTogether>
    <Top>0.84944in</Top>
    <Height>6.84897in</Height>
    <Width>3.96896in</Width>
    <ZIndex>2</ZIndex>
    <Style>
      <Border>
        <Style>None</Style>
      </Border>
    </Style>
  </Rectangle>

...

<Rectangle Name="Rectangle2">
    <ReportItems>
      <Image Name="PPE0">
        <Source>External</Source>
        <Value>="File:///" + Parameters!AppPath.Value + Parameters!PPEImages.Value(0)</Value>
        <MIMEType>image/png</MIMEType>
        <Sizing>FitProportional</Sizing>
        <Top>0.45312in</Top>
        <Height>1in</Height>
        <Width>1in</Width>
        <Visibility>
          <Hidden>=Parameters!PPEImages.Count &lt; 1</Hidden>
        </Visibility>
        <Style>
          <Border>
            <Style>None</Style>
          </Border>
        </Style>
      </Image>
      <Textbox Name="Textbox2">
        <KeepTogether>true</KeepTogether>
        <Paragraphs>
          <Paragraph>
            <TextRuns>
              <TextRun>
                <Value>PPE</Value>
                <Style>
                  <FontSize>12pt</FontSize>
                  <FontWeight>Bold</FontWeight>
                </Style>
              </TextRun>
            </TextRuns>
            <Style />
          </Paragraph>
        </Paragraphs>
        <rd:DefaultName>Textbox2</rd:DefaultName>
        <Height>0.33333in</Height>
        <Width>1in</Width>
        <ZIndex>5</ZIndex>
        <Style>
          <Border>
            <Style>None</Style>
          </Border>
          <PaddingLeft>2pt</PaddingLeft>
          <PaddingRight>2pt</PaddingRight>
          <PaddingTop>2pt</PaddingTop>
          <PaddingBottom>2pt</PaddingBottom>
        </Style>
      </Textbox>
    </ReportItems>
    <KeepTogether>true</KeepTogether>
    <Top>0.84944in</Top>
    <Left>4.0384in</Left>
    <Height>1.45312in</Height>
    <Width>5.60125in</Width>
    <ZIndex>5</ZIndex>
    <Style>
      <Border>
        <Style>None</Style>
      </Border>
    </Style>
  </Rectangle>

更新:我们设法让 Rectangle2 显示,代价是 Rectangle1 玩弄 Z-index。所以这是多个矩形的问题...

【问题讨论】:

注意:我可以通过将所有内容嵌套在一个大矩形中来绕过这个问题。 s-s-rS 不喜欢多个 Rectangles 作为 Body 的直接 ReportItems。 【参考方案1】:

需要考虑的三件事:

    如果只是一个文本框,是否必须使用矩形?您可以将其对齐为自己的元素

    文本框是否溢出或具有可能溢出大小的字体?矩形的第一个问题是由于对齐、格式等原因显示值。如果您不确定在框中放置一些非常小的东西,然后使矩形变得很大。要进行额外的调试,请先执行第 1 步并验证该框是否存在且没有矩形

    你是如何调试进程的?是在设计师的商业智能开发工作室还是在其他地方?如果您不是,我会在设计器中进行测试,因为如果您使用的是 IE 以外的其他东西,则显示可能会因使用的最终产品而异。此外,如果您使用容器元素在 ReportViewer、Form 或其他等效前端等代码中显示,它可能会覆盖某些值。

这些都是我的想法,因为我之前也有图像和文本没有出现在矩形中。

【讨论】:

感谢您的参与。1. 文本框和 5 张图片。整个组将有条件地显示 - 最终。如果需要的话,我会把矩形拿出来,但我遇到了一个顽固的假设。 2.不溢出。我划定了高度和宽度,并且可以在设计器中清楚地分辨出来。 3.我在VS端的设计器和xml之间跳来跳去,渲染的报告生成为pdf(下载)。嗯... ReportViewer 可能是覆盖值。我会调查一下 - 你能指点我一些裁判吗?再次感谢,非常感谢! 这真的取决于你的问题。我会检查 Visual Studio 设计器,或者如果您没有访问 s-s-rS 站点并使用在 Web 模式下可用的设计器。这些示例适用于几乎所有前端都指向一个可能覆盖查看器基本特征的 css 文件。

以上是关于矩形中的 s-s-rS 图像/texboxes 不显示的主要内容,如果未能解决你的问题,请参考以下文章

s-s-rS 如何匹配矩形对等高度以避免 Word 导出中的间距问题?

背景图像未与 s-s-rS 中的气泡图对齐

如何在 s-s-rS 中显示 Dynamics(在 SQL Server 2016 上运行)中的 BLOB 图像

如何识别此图像中的矩形?

图像的 s-s-rS 表达式

将 s-s-rS 报告导出为 PDF 格式时出现 png 图像问题