轉帖|使用教程|編輯:龔雪|2016-03-04 09:07:21.000|閱讀 876 次
概述:本文我們就來逐步介紹如何將C1Chart綁定到XML數據源,在本文中用到的最主要的綁定是使用在XAML代碼中的ChartData類。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
<ComponentOne Studio for WPF下載>
本文我們就來逐步介紹如何將C1Chart綁定到XML數據源。在XAML頁面下有一個XML數據源,我們需要將C1Chart控件綁定到xml數據。數據展示了一個簡單的bar圖表信息,有一個Y軸代表城市的名稱,和X軸代表每一個國家的統計。圖表使用一個系列來畫統計數據。一個legend用來展示統計顏色。在本文中用到的最主要的綁定是使用在XAML代碼中的ChartData類。綁定C1Chart到xml的步驟如下:
在VisualStudio里創建WPF工程,更多的初始化的信息。
在Window頁面創建一個資源部分,然后添加xml數據提供者。在資源部分直接插入xml數據。xml數據必須在“x:Xdata”內,而且有一個單一個的根節點。在本例中,這個根節點市Cities。
<Grid.Resources> <XmlDataProvider x:Key="data" XPath="Cities/City"> <x:XData> <Cities xmlns=""> <City> <CityName>Mumbai</CityName> <Population>13000000</Population> </City> <City> <CityName>Karachi</CityName> <Population>11600000</Population> </City> <City> <CityName>Delhi</CityName> <Population>11500000</Population> </City> <City> <CityName>Isanbul</CityName> <Population>11200000</Population> </City> </Cities> </x:XData> </XmlDataProvider> </Grid.Resources>
給工程添加C1.WPF.C1Chart引用,并且添加C1Chart到Window頁面。
改變C1Chart的類型為Bar(ChartType=Bar)。
在“c1chart:C1Chart.Data”標簽里給ChartData添加ItemNameBinding屬性,指定元素的名稱。在本例中,就是在y軸的標簽。在DataSeries 里添加ValueBinding屬性,指定序列的數值。如下的示例使用綁定擴張綁定了ChartData.ItemsSource屬性,用來指定資源。ChartData.ItemNameBinding屬性使用綁定擴展來指定路徑。DataSeries.Label屬性使用綁定擴展指定數據統計的路徑。XAML代碼如下:
<c1:C1Chart Height="300" HorizontalAlignment="Left" Margin="0" Name="c1Chart1" ChartType="Bar" VerticalAlignment="Top" Width="600"> <c1:C1Chart.Data> <c1:ChartData ItemsSource="{Binding Source={StaticResource data}}" ItemNameBinding="{Binding XPath=CityName}"> <c1:DataSeries Label="Population" ValueBinding="{Binding XPath=Population}" /> </c1:ChartData> </c1:C1Chart.Data> <c1:Legend DockPanel.Dock="Right" /> </c1:C1Chart>
運行工程,保證程序的正確性。圖表如下所示:
改變圖表的樣式。在C1Chart的ChartView.AxisX屬性中,我們需要設置x軸的數字顯示格式,這要通過annotation,這樣數據可以用千位符分割。如下的代碼展示這個功能。另外可以使用MajorGridStroke/MinorGridStroke屬性來設置major/minor的線。同樣的,可以在上面鏈接的文章中找到如何給系列更改顏色,比如這個例子,設置Palette="Civic"來更改系列的顏色。最后的效果如下圖所示:
本文示例:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網