【问题标题】:Clickable (action) cells in SSRS on SharepointSharepoint 上 SSRS 中的可点击(操作)单元格
【发布时间】:2014-12-05 21:07:18
【问题描述】:

当创建一个只包含一个文本框的非常简单的报告时,我可以在 SSRS 中对该文本框进行操作以使该文本框可点击:

在 SSDT 预览窗格中预览报告时,文本框可按预期点击:

但是,当我将报告上传到 Sharepoint 并在浏览器中查看时,只有 单元格内的文本 是可点击的(而不是整个单元格):

更改兼容性视图,使用不同的浏览器不会改变任何事情。

在 Sharepoint (2013) 中查看我的报告时,是否有任何方法可以使整个单元格可点击?

(也许我缺少使 Sharepoint SSRS 渲染与 SSDT 或 Report Viewer 渲染相同的设置?)

【问题讨论】:

    标签: sharepoint reporting-services sharepoint-2013


    【解决方案1】:

    不,这在带有文本的 SSRS 中是不可能的。

    假设文本是静态的,一种可能的解决方法是在单元格中使用图像并将操作附加到图像。

    发生这种情况的原因:

    在网络上:

    在远程模式下通过 SSRS 在 Web 上查看报告时,它们最终会转换为 HTML。文本框被转换为<div> 标签。带有操作的文本框将呈现为包含<a> 标记的<div> 标记。因此,在 Web 中查看时,您的浏览器会将文本解释为 <div> 中的常规超链接,而不是“文本框”对象。由于在 HTML 中实现了<a>,因此只有文本是可操作的,而不是整个框。这可以通过在浏览器中呈现报告并检查元素来证明。

    它以这种方式工作的一个可能原因是,在纯 HTML(v5 之前)中,将完整的 DIV 放在锚标记内是不正确的(有关更多信息,请参见 this discussion)。使锚标记内的文本像块一样显示(通过 CSS)是正确的,但是 IE7(默认情况下呈现兼容模式报告)isn'tthatgood 在使用 CSS 显示时:块声明:)。

    在 SSDT 中:

    在 SSDT 中,报表使用 WinForms ReportViewer 执行。这意味着预览屏幕也将使用 WinForms 控件来构建预览。因此,在这种情况下,文本框将由 WinForms 控件TextBox 对象表示。此对象的可操作区域不仅是文本,而且是对象的整个边界。

    【讨论】:

    • 你有这方面的资料吗?或者,如果它“无法使用文本”,可能是它在 SSDT 中显示为完全可点击的原因?
    • @vstrien 我根据自己的研究编辑了我的答案以包含一个原因。我不认为这在 MS 文档中的任何地方都有记录。
    • 我认为我们现在已经接近真相了。足以开始将其视为答案;-)。
    猜你喜欢
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    • 2021-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-07
    • 1970-01-01
    相关资源
    最近更新 更多