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