2014-10-31 139 views
0

我正在使用devexpress和xtrareport工具。DevExpress XtraReport:布爾過濾器

我做了一個布爾paramenter的過濾器,以這種方式定義:

this.FilterString = "[ABILITATO] = ?abilitatoParam"; 

它的工作原理,但是...如果我想看到ABILITATO記錄設置爲true,我點擊真和同樣的錯誤。但是如果我想查看所有記錄,而不進行過濾?

回答

1

用字符串過濾器完成。

我使用事件ParametersRequestSubmit。然後我檢查參數和我設置我想要的值:

if (e.ParametersInformation[0].Parameter.Value.ToString() == Application.Current.FindResource("Abilitati").ToString()) 
    e.ParametersInformation[0].Parameter.Value = "True"; 
else if (e.ParametersInformation[0].Parameter.Value.ToString() == Application.Current.FindResource("Disabilitati").ToString()) 
    e.ParametersInformation[0].Parameter.Value = "False"; 
else if (e.ParametersInformation[0].Parameter.Value.ToString() == Application.Current.FindResource("Tutti").ToString()) 
    e.ParametersInformation[0].Parameter.Value = string.Empty; 

,這是過濾字符串:

"Contains([ABILITATO], ?abilitatoP)" 
-1

我認爲這是可能與filterstringIff條件。首先,您必須創建一個計算字段並使用您的篩選器集來設置Iff條件。 將計算字段作爲主字段。