我正在使用devexpress和xtrareport工具。
我做了一个带有布尔参数的过滤器,用这种方式定义:
this.FilterString = "[ABILITATO] = ?abilitatoParam";
它可以工作,但是......如果我想看到ABILITATO设置为true的记录,我点击True,同样的False。但是,如果我想看到所有的记录,没有过滤?
答案 0 :(得分: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 :(得分:-1)
I think it's possible with Iff
condition in filterstring
. First you must create a calculated field and set Iff
condition with your set of filter.
Put calculated field as main field.