提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:况鱼杰|2019-08-29 15:14:20.783|阅读 342 次
概述:本教程将会持续介绍有关于图表控件Teechart的问答文章,帮助用户解决常见问题。本篇文章将会介绍如何将TeeChart for NET连接到数据绑定源。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
TeeChart for .NET图表组件库提供数百种2D和3D图形样式,54种运算和统计函数以及无限数量的坐标轴和14工具箱供你选择。该图表控件还可以有效地用于创建多任务的仪表板。
本文章中的演示展示了拥有TeeChart的图表如何在WinForm的应用程序中的表单上相互协作。
该演示使用了小型技术产品供应商的公司数据的基础;该公司销售电子产品,小型计算机,平板电脑和移动电话,并在全球一些国家拥有市场。
可以在点击下载使用Visual Studio 2015编写的演示代码。
创建项目
我们创建一个新的的WinForms项目,并将主窗体重命名为ReportForm。
向表单添加对象。我们将三个图表,一个dataGridView和一个文本框添加到表单中,并将它们放置在占据表单的整个空间中,参见下图。
使用图表编辑器,我们在图表中添加了一个数据集以及一个平滑功能,您可以在此阶段看到填充的随机数据,可以在设计时或运行时添加数据系列。
我们将公司销售数据放在名为TechProducts Ltd的MS Access文件中,并将该文件放在LinkingCharts解决方案文件夹中。
将数据添加到项目中
我们已经将数据库添加到项目中,公开表和查询(视图)。
使用BindingSource的组件,我们连接到访问数据库。数据库已经为我们希望可视化的一些数据准备了查询。对于其他情况,在运行时执行期间,我们将在代码中编写一些SQL查询。
添加了三个BindingSources,连接到$ _€_SalesByYear,$ _SalesByCountry_2015和$ _SalesByContinent视图。
将图表连接到数据
要连接到的BindingSource,请打开要修改的图表编辑器,然后选择先前已添加的系列并转到其数据源选项卡。如果单击数据集选项卡,则可以选择要连接该系列的BindingSource的。在以下选择框中,您可以将不同的源字段与X和y系列值列表相关联。
对三个图表重复连接技术。我们已将左栏系列图表连接到SalesByContinent数据,右侧是饼图,连接到SalesByCountry_2015数据,将下线图表连接到SaleByYear数据。
链接图表
我们现在有三个图表,按大陆,地区(销售国家,非洲大陆)和国家的数据区分。我们在这个演示中的目的是链接三个图表,这样,通过点击大陆图表的条形图,我们可以填充区域图表,通过点击区域图表,我们可以显示所选国家最近几年的销售演变。dataGridView将更新以显示区域图表的内容。
注意:演示将打开,显示区域图表中的所有国家/地区。文本框更新以显示机器人记者的模拟评论。
要链接项目页面的不同元素,我们将设置一些图表事件。
ClickSeries事件
我们正在使用ClickSeries事件,它将会查看点击图表中的值作为参数填充下一个相关图表。我们可以在设计时添加事件定义,方法是选择我们希望操作的图表,然后选择Visual Studio的属性窗口的事件选项卡,在这种情况下,从列表中选择TChart的点击事件。
这将在Form的代码页中创建事件方法。在这里,我们需要添加一些内容,以便将系列点击与我们希望去的地方联系起来。为清晰起见,我们选择部分手动编码查询。该方法遵循以下步骤:
以国家/大陆图表的原始查询为基础,对其进行修改以收集所有可用年份的数据。
修改区域查询:
@contiparam是您要查看的大陆,来自大陆图表值的标签。如果要为查询创建更好的索引,可以使用索引值或其他变量。
string sqlStr =“SELECT Sum(Fact_Invoices.Invoice_Value)AS SumOfInvoice_Value,Lookup_Country.Country_name,Lookup_Continent.continent_name”; sqlStr + =“FROM((Fact_Invoices INNER JOIN Lookup_Customers ON Fact_Invoices.Cod_Customer = Lookup_Customers.Cod_Customer)”; sqlStr + =“INNER JOIN Lookup_Country ON Lookup_Customers.Country_code_A2 = Lookup_Country.Country_code_A2)”; sqlStr + =“INNER JOIN Lookup_Continent ON Lookup_Country.Continent = Lookup_Continent.continent”; sqlStr + =“where Lookup_Continent.continent_name = @contiParam GROUP BY Lookup_Country.Country_name,Lookup_Continent.continent_name”;
修改国家/地区查询:
我们将要审核的国家/地区的标签作为国家/地区时间查询的参数。
string sqlStr =“SELECT Sum(Fact_Invoices.Invoice_Value)AS SumOfInvoice_Value,Fact_Invoices.Invoice_year AS AYear,Lookup_Country.Country_name”; sqlStr + =“FROM(Lookup_Customers INNER JOIN Fact_Invoices ON Lookup_Customers.Cod_Customer = Fact_Invoices.Cod_Customer)”; sqlStr + =“INNER JOIN Lookup_Country ON Lookup_Customers.Country_code_A2 = Lookup_Country.Country_code_A2”; sqlStr + =“WHERE Lookup_Country.Country_name = @countryParam”; sqlStr + =“GROUP BY Fact_Invoices.Invoice_year,Lookup_Country.Country_name”;
这些查询足以链接图表,我们从GridView控件以相同的方式点击一下。以其中一个为例,对于区域图表,您可以看到如何为收件人图表创建的BindingSource以方便插入。
使用SQL查询创建和使用新的BindingSource的作为网格和图表的源。
DataSet customers = new DataSet(); System.Data.OleDb.OleDbDataAdapter myAdapter = new System.Data.OleDb.OleDbDataAdapter(sqlStr, this.___SalesByCountry_2015TableAdapter.Connection); //apply region code myAdapter.SelectCommand.Parameters.Clear(); myAdapter.SelectCommand.Parameters.Insert(0, new System.Data.OleDb.OleDbParameter("contiParam", region)); myAdapter.Fill(customers, "Customers"); bindEurope = new BindingSource(); bindEurope.DataSource = customers; bindEurope.DataMember = customers.Tables[0].ToString(); dataGridView1.DataSource = bindEurope; dataGridView1.Refresh(); dataGridView1.Columns[0].HeaderText = "Sales Income"; dataGridView1.Columns[1].HeaderText = "Country"; dataGridView1.Columns[2].HeaderText = "Continent"; tChart3[0].DataSource = bindEurope; tChart3[0].YValues.DataMember = "SumOfInvoice_Value"; tChart3[0].LabelMember = "Country_name"; tChart3[0].CheckDataSource();
TeeChart使用Chart Series的CheckDatasource()方法刷新Chart数据。
应用输出
下列两图的屏幕截图显示了运行时的应用程序。
相关资料推荐:
TeeChart for .NET已加入在线订购,现在抢购可立享特别优惠!!!
关注慧聚IT微信公众号☟☟☟,了解产品的最新动态及最新资讯。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
优秀的工业4.0 WinForm图表控件,官方独家授权汉化,集功能全面、性能稳定、价格实惠等优势于一体
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢