最新的 TX Text Control .NET for Windows Forms X8 控件支持插入一个DataVisualization.Charting.Chart类型的图表控件,DataVisualization.Charting.Chart是 .NET Framework 4.0中的一部分功能。插入的图表控件可以像图片、文本框、或者单个字符一样就行放置。
新增加的 ChartFrame 类型用于处理文档中的图表对象,ChartFrame 总是和一个图表控件相关联,并用来处理图表的外观和数据。
本文主要实现的功能是将下列XML数据以图表的形式显示在文档中:
- <?xml version="1.0" encoding="utf-8" ?>
- <sales>
- <points>
- <country>Country 1</country>
- <value>100</value>
- </points>
- <points>
- <country>Country 2</country>
- <value>120</value>
- </points>
- <points>
- <country>Country 3</country>
- <value>80</value>
- </points>
- </sales>
复制代码
为了在文档中插入一个图表对象,我们首先需要创建一个新的图表,此时,我们需要在工程中添加 System.Windows.Forms.DataVisualization.Charting.Chart 的引用
每个图表对象都包含一个 ChartArea 对象,以及一个Series对象
- Chart chart = new Chart();
- chart.ChartAreas.Add("chartArea1");
- chart.Series.Add("series1");
-
- // set the ChartType
- chart.Series["series1"].ChartArea = "chartArea1";
- chart.Series["series1"].ChartType = SeriesChartType.Bar;
复制代码
接下来,我们需要加载XML数据岛DataSet对象中,列名将作为图表数据绑定的名称:
- DataSet ds = new DataSet();
- ds.ReadXml("data.xml");
-
- chart.Series[0].XValueMember = ds.Tables[0].Columns[0].ColumnName;
- chart.Series[0].YValueMembers = ds.Tables[0].Columns[1].ColumnName;
复制代码
最后,DataSet中的第一个DataTable对象将作为Chart对象的数据源,然后将一个 ChartFrame 对象插入到文档中:
- chart.DataSource = ds.Tables[0];
- chart.DataBind();
-
- ChartFrame chartFrame = new ChartFrame(chart);
- textControl1.Charts.Add(chartFrame, -1);
复制代码 |
|