如何动态添加RadHtmlChart的DataFieldY值?

时间:2015-06-29 18:52:16

标签: telerik client-side radhtmlchart

使用telerik制作PieSeries图表时:RadHtmlChart

是否可以,如果可以,您如何将DataFieldY属性设置为Excel上传中第一列的名称?

<telerik:RadHtmlChart runat="server" ID="RadHtmlChart1" Transitions="false" Width="450"
    Height="450" Skin="Silk">
    <Legend>
        <Appearance Visible="false"></Appearance>
    </Legend>
    <PlotArea>
        <Series>
            <telerik:PieSeries DataFieldY="Number" NameField="Fruit" ExplodeField="IsExploded">
            </telerik:PieSeries>
        </Series>
    </PlotArea>
</telerik:RadHtmlChart>

这需要通过客户端绑定来完成。

public string chartData = "[{'Fruit': 'Apple','Number': 8, 'Color': 'Blue'},{'Fruit': 'Orange','Number': 4, 'Color': 'Purple'},{'Fruit': 'Banana','Number': 3, 'Color': 'Red'},{'Fruit': 'Grapes','Number': 12, 'Color': 'Pink'},{'Fruit': 'Peace','Number': 2, 'Color': 'Orange'}]";

var jsonChartData = "<%=chartData%>";

                    var RadHtmlChart1 = $find('<%=RadHtmlChart1.ClientID %>');
                    RadHtmlChart1.set_dataSource(jsonChartData);
                    RadHtmlChart1.set_transitions(true);
                    RadHtmlChart1.repaint();

1 个答案:

答案 0 :(得分:1)

你不能直接这样做。该控件可以使用多个数据源:

  • JSON文字的JavaScript数组(已粘贴)

  • 一个IEnumerable集合(由声明数据源控件提供,如SqlDataSource;或者一个List;或者一个DataTable,你明白了)

Excel文件都不是。

您需要以某种方式解析excel文件以获取所需的集合: