2010-07-09 38 views
17

我在tablex中有一行我想根據條件隱藏。我可以通過可見性屬性來執行此操作,並且還可以使用CanShrink作爲選項。在Reporting Services 2008中隱藏tablix的行(並刪除空格佔位符)

我已經嘗試了這兩種方法,並且我能做的最好的方法是隱藏該行(使其不可見),但它保留了需要的空白 - 我還需要刪除空白,因此如果未顯示它不佔用紙張/觀看空間。

我也使行的高度非常小,並把cangrow = true,以便如果我填充數據基於表達式的字段它將增長到正確的大小,但這並不理想,因爲仍然存在對於總是顯示的行(最小高度)爲0.03125in的空間,並且如果它增長,則其增長以適合文本,但不是我想要的設置大小。

我以爲我以前在RS的舊版本中完成過這個工作,但我似乎無法在此版本(2008)中正常工作。

任何想法?

回答

22

嘗試在詳細信息組下設置靜態行組的隱藏屬性,在這種情況下,整行將消失而不是文本框的內容。

如果您使用Report Builder,則需要切換到高級模式(確保顯示屬性和分組窗口,然後轉到分組窗口的右上角並按黑色三角形):

The magic triangle

的「(詳細信息)」組下單擊第二個「靜態」的項目,你可以設置屬性窗口中的隱藏屬性。

Link to MSDN sample

+2

您還必須切換到高級模式,如上面在Visual Studio 2015(rdlc)中的報告設計器中所述。這對我有效。選擇tablix行併爲Hidden屬性創建表達式,但如原始文章中所述,留下隱藏行的空白。儘管有點隱蔽(很難發現),但這種解決方案很簡單。我從來沒有點擊過這個向下的三角形。我認爲這是爲了訪問列組的選項。 – iCode 2015-11-09 19:12:36

+0

這似乎不工作。我已經設置了行可見性,並且空白仍然存在。我也嘗試設置HideIfNoRows,也沒有幫助。 – greg 2017-05-30 14:56:57

2

一種更簡單的方式來獲得該選項用於隱藏行的行標題右鍵單擊並選擇「行可見性」。從那裏你會得到一個對話框,可以輸入一個表達式。

+3

正如我在我的評論中所描述的那樣,正如原始帖子中提到的那樣,這樣做的功效在於它隱藏了行,但它也爲行的高度留下了空白,這在大多數情況下都是不可取的。 – iCode 2015-11-09 19:16:27

0

在要躲起來,去到文本框的屬性和去表達的空行 - >知名度,然後顯示或基於表達式隱藏和使用

= IIF(第一(場。價值! =「」),真,假)

+0

字段值位於要用於隱藏其餘行的空文本框上 – bob 2017-02-10 18:20:46

0

我能夠讓行消失通過設置以下2個屬性

textbox.CanShrink row.Hidden 我打得瓦特/ row.HideIfNoRows,似乎對完成op所描述的理想結果沒有任何效果。

點擊文本框,這些是文本框的屬性 (如果有多列,我假設你將不得不爲每個單元格/文本框設置此設置,在我的情況下,我只有1列)

CanShrink=false 

對於下一個屬性,您必須通過單擊行組/列組窗格右側的向下箭頭進入高級模式。

單擊包含要隱藏的行的行。 隱藏的屬性可以在屬性窗格中找到... 這是一種設置隱藏的替代方法,而不是右鍵單擊實際Tablix中的行標題。其他

Hidden= <expression describing when you want the row hidden hidden> 

一個注意 - 如果你右擊行標題,然後選擇「行可見」你得到一個dialgue。 「行屬性」對話框有一個標題「顯示或隱藏基於表達式」。

實際行爲是它會HIDE如果表達式計算結果爲TRUE。恕我直言 - 這是誤導,充其量含糊不清。

一旦你明白了你實際設置的屬性叫做HIDDEN,那麼這是有道理的。在此之前,我當然認爲我設置了一個名爲Visisble的屬性... FWIW ....

相關問題