cd79876fda84d7ee92b75c9f781286de33029250
FAQ/PerformCustomRendering.md
| ... | ... | @@ -0,0 +1,92 @@ |
| 1 | +#PerformCustomRendering |
|
| 2 | + |
|
| 3 | +[[_TOC_]] |
|
| 4 | + |
|
| 5 | +##About |
|
| 6 | + |
|
| 7 | +Represents a method used to edit the literal HTML of the rendered report results before it gets pushed to the client via the report viewer, dashboard viewer, or Excel export. Forms can also be edited using a more context-specific override that uses a different signature. |
|
| 8 | + |
|
| 9 | +##C♯ Example |
|
| 10 | + |
|
| 11 | +```csharp |
|
| 12 | +//Represents a method used to replace the regular report results with the results of an HTML form. |
|
| 13 | +public override bool PerformCustomRendering(Report report, ReportQueryExecuteResult results, string appliedFilters, bool print, out string resultFromCustomRenderer) |
|
| 14 | +{ |
|
| 15 | + bool customRendered = base.PerformCustomRendering(report, results, appliedFilters, print, out resultFromCustomRenderer); |
|
| 16 | + if (customRendered) |
|
| 17 | + foreach (Field f in report.Fields) |
|
| 18 | + { |
|
| 19 | + switch (f.FormatString) |
|
| 20 | + { |
|
| 21 | + case "{0:d}": |
|
| 22 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-ShortDateFormat"); |
|
| 23 | + break; |
|
| 24 | + case "{0:D": |
|
| 25 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-LongDateFormat"); |
|
| 26 | + break; |
|
| 27 | + case "{0:t}": |
|
| 28 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-ShortTimeFormat"); |
|
| 29 | + break; |
|
| 30 | + case "{0:T}": |
|
| 31 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-LongTimeFormat"); |
|
| 32 | + break; |
|
| 33 | + case "{0:f}": |
|
| 34 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-FullShortFormat"); |
|
| 35 | + break; |
|
| 36 | + case "{0:F}": |
|
| 37 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-FullLongFormat"); |
|
| 38 | + break; |
|
| 39 | + case "{0:g}": |
|
| 40 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-GenShortFormat"); |
|
| 41 | + break; |
|
| 42 | + case "{0:G}": |
|
| 43 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-GenLongFormat"); |
|
| 44 | + break; |
|
| 45 | + } |
|
| 46 | + } |
|
| 47 | + return customRendered; |
|
| 48 | +} |
|
| 49 | + |
|
| 50 | +//Represents a method used to modify the HTML results of reports on the report viewer, report designer, and Excel export |
|
| 51 | +public override string PerformCustomRendering(string initialHtml) |
|
| 52 | +{ |
|
| 53 | + return initialHtml.Replace("foo", "xls-text"); |
|
| 54 | +} |
|
| 55 | +``` |
|
| 56 | + |
|
| 57 | +##VB.NET Example |
|
| 58 | + |
|
| 59 | +```visualbasic |
|
| 60 | +'Represents a method used to replace the regular report results with the results of an HTML form. |
|
| 61 | +Public Overrides Function PerformCustomRendering(report As Report, results As ReportQueryExecuteResult, appliedFilters As String, print As Boolean, ByRef resultFromCustomRenderer As String) As Boolean |
|
| 62 | + Dim customRendered As Boolean = MyBase.PerformCustomRendering(report, results, appliedFilters, print, resultFromCustomRenderer) |
|
| 63 | + If customRendered Then |
|
| 64 | + For Each f As Field In report.Fields |
|
| 65 | + Select Case f.FormatString |
|
| 66 | + Case "{0:d}" |
|
| 67 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-ShortDateFormat") |
|
| 68 | + Case "{0:D}" |
|
| 69 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-LongDateFormat") |
|
| 70 | + Case "{0:t}" |
|
| 71 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-ShortTimeFormat") |
|
| 72 | + Case "{0:T}" |
|
| 73 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-LongTimeFormat") |
|
| 74 | + Case "{0:f}" |
|
| 75 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-FullShortFormat") |
|
| 76 | + Case "{0:F}" |
|
| 77 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-FullLongFormat") |
|
| 78 | + Case "{0:g}" |
|
| 79 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-GenShortFormat") |
|
| 80 | + Case "{0:G}" |
|
| 81 | + resultFromCustomRenderer = resultFromCustomRenderer.Replace("foo", "xls-date-GenLongFormat") |
|
| 82 | + End Select |
|
| 83 | + Next |
|
| 84 | + End If |
|
| 85 | + Return customRendered |
|
| 86 | +End Function |
|
| 87 | + |
|
| 88 | +'Represents a method used to modify the HTML results of reports on the report viewer, report designer, and Excel export |
|
| 89 | +Public Overrides Function PerformCustomRendering(initialHtml As String) As String |
|
| 90 | + Return initialHtml.Replace("foo", "xls-text") |
|
| 91 | +End Function |
|
| 92 | +``` |
|
| ... | ... | \ No newline at end of file |