自定义 Telerik DataViz 图表工具提示颜色
Custom Telerik DataViz chart tooltip color
我有一张包含多种颜色的图表。工具提示应显示为黑色或白色,具体取决于图表栏的背景颜色。我能想到的唯一选择是用 series.name
来处理这个问题。但是没有任何效果。
此代码准确地将一段白色或黑色文本作为工具提示放到屏幕上:
.Tooltip(tooltip =>
tooltip.Visible(true).Template("# if ((series.name === 'foo') || (series.name === 'bah')) { return '<strong style=\"color: black\">bar</strong>'; } else { return '<strong style=\"color: white\">bar</strong>'; } #")
)
但是,一旦我插入 #= series.name # #= value #
而不是 bar
,该功能就会崩溃并且不再有效。
接下来,我尝试了 SharedTemplate 和 Template(当然一次一个):
.Tooltip(tooltip =>
tooltip.Visible(true).Template("mytemplate")
tooltip.Visible(true).SharedTemplate("mytemplate")
)
<script id="mytemplate" type="text/x-kendo-template">
# if ((series.name === 'foo') || (series.name === 'bah')) { #
<strong style="color: black">bar</strong>
# } else { #
<strong style="color: white">bar</strong>
# } #
</script>
这没有做任何事情,而是显示了 "mytemplate" 的工具提示。
这可以吗?如果没有,是否有任何解决方法?
答案是在系列本身上设置工具提示颜色:
.Series(series => {
series.Column(new double[] { 1, 2, 3}).Name("India").Tooltip(t=>t.Background("#fff"));
series.Column(new double[] { 4, 5, 6 }).Name("Russian Federation").Tooltip(t => t.Background("#000"));
series.Column(new double[] { 7, 8, 9}).Name("Germany").Tooltip(t => t.Background("#fff"));
})
我有一张包含多种颜色的图表。工具提示应显示为黑色或白色,具体取决于图表栏的背景颜色。我能想到的唯一选择是用 series.name
来处理这个问题。但是没有任何效果。
此代码准确地将一段白色或黑色文本作为工具提示放到屏幕上:
.Tooltip(tooltip =>
tooltip.Visible(true).Template("# if ((series.name === 'foo') || (series.name === 'bah')) { return '<strong style=\"color: black\">bar</strong>'; } else { return '<strong style=\"color: white\">bar</strong>'; } #")
)
但是,一旦我插入 #= series.name # #= value #
而不是 bar
,该功能就会崩溃并且不再有效。
接下来,我尝试了 SharedTemplate 和 Template(当然一次一个):
.Tooltip(tooltip =>
tooltip.Visible(true).Template("mytemplate")
tooltip.Visible(true).SharedTemplate("mytemplate")
)
<script id="mytemplate" type="text/x-kendo-template">
# if ((series.name === 'foo') || (series.name === 'bah')) { #
<strong style="color: black">bar</strong>
# } else { #
<strong style="color: white">bar</strong>
# } #
</script>
这没有做任何事情,而是显示了 "mytemplate" 的工具提示。
这可以吗?如果没有,是否有任何解决方法?
答案是在系列本身上设置工具提示颜色:
.Series(series => {
series.Column(new double[] { 1, 2, 3}).Name("India").Tooltip(t=>t.Background("#fff"));
series.Column(new double[] { 4, 5, 6 }).Name("Russian Federation").Tooltip(t => t.Background("#000"));
series.Column(new double[] { 7, 8, 9}).Name("Germany").Tooltip(t => t.Background("#fff"));
})