wpf 大数据界面_24小时删!WPF 界面开发可视化数据源500行代码分享

通过DevExpress WPF Controls,您能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。

在本教程中,您将完成可视化数据源所需的步骤。

应该执行以下步骤,本文我们将为大家介绍3个步骤及最后结果,更多完整内容欢迎持续关注!

  • Step 1. 编写一个应用程序
  • Step 2. 为图表和系列绑定添加数据
  • Step 3. 配置系列视图
  • 结果

Step 1. 编写一个应用程序

您将带有Model和ViewModel类的数据文件添加到项目中。

  • 运行MS Visual Studio 2010、2012、2013或2015。
  • 创建一个全新的WPF Application项目
  • 添加一个新的模型类。 为此,在解决方案资源管理器中右键单击该项目。从invoked菜单中,选择Add | New Item... element。
50e52e446e734618b4b797664cdcc6fb.png

在调用的Add New Item对话框中,选择Code组,然后从项目列表中选择Class,将文件名设置为Star.cs,然后单击OK。

d00f4c3f54da022acd913d69a0ad8bbe.png
  • 将添加的文件包含的代码替换为以下代码,该代码描述此入门课程中使用的模型对象。

C#

namespace GettingStarted2 {public struct Star {public int HipID { get; private set; }public string Spectr { get; private set; }public double Luminocity { get; private set; }public double ColorIndex { get; private set; }public double X { get; private set; }public double Y { get; private set; }public double Z { get; private set; }public Star(int id,double x,double y,double z,string spectr, double luminocity, double colorIndex) {HipID = id;X = x;Y = y;Z = z;Spectr = spectr;Luminocity = luminocity;ColorIndex = colorIndex;}}}

VB.NET

Public Class StarDim mHipID As Int32Dim mSpectr As StringDim mX, mY, mZ, mLuminocity, mColorIndex As DoublePublic ReadOnly Property HipID() As Int32GetReturn mHipIDEnd GetEnd PropertyPublic ReadOnly Property Spectr() As StringGetReturn mSpectrEnd GetEnd PropertyPublic ReadOnly Property X() As DoubleGetReturn mXEnd GetEnd PropertyPublic ReadOnly Property Y() As DoubleGetReturn mYEnd GetEnd PropertyPublic ReadOnly Property Z() As DoubleGetReturn mZEnd GetEnd PropertyPublic ReadOnly Property Luminocity() As DoubleGetReturn mLuminocityEnd GetEnd PropertyPublic ReadOnly Property ColorIndex() As DoubleGetReturn mColorIndexEnd GetEnd PropertyPublic Sub New(ByVal id As Int32,ByVal x As Double,ByVal y As Double,ByVal z As Double,ByVal spectr As String,ByVal luminocity As Double,ByVal colorIndex As Double)mHipID = idmX = xmY = ymZ = zmSpectr = spectrmLuminocity = luminocitymColorIndex = colorIndexEnd SubEnd Class
  • 将数据文件添加到项目中。 将DevExpress Charts Demo随附的stardata.csv文件复制到项目目录新创建的Data目录中。

注意:默认情况下,该文件位于C:甥敳獲PublicDocumentsDevExpress Demos 20.1ComponentsWPFCSChartsDemo.WpfData目录中。

在解决方案资源管理器中,切换Show All Files按钮,然后右键单击Data目录。从调用的菜单中,选择Include In Project。

cefedf641599ad86cb93a7fbf92c4e5e.png

单击解决方案资源管理器中的stardata.csv文件,然后在Properties窗口中,将Build Action属性设置为Resource。

b04b25d5ff96e34b6bd2b5a0a97c37f7.png
  • ViewModel应该从数据文件加载模型对象,像以前一样,将文件添加到ViewModel的项目中。

用以下代码替换新文件中的代码。

C#

using System;using System.Collections.Generic;using System.Collections.ObjectModel;using System.Globalization;using System.IO;using System.Windows;using System.Windows.Resources;namespace GettingStarted2 {public class StarStatisticsViewModel {public IEnumerable Stars { get; }public StarStatisticsViewModel() {Stars = StarStatisticsLoader.Load("/Data/starsdata.csv");}}static class StarStatisticsLoader {public static IEnumerable Load(string filepath) {StreamResourceInfo streamInfo = Application.GetResourceStream(new Uri(filepath, UriKind.RelativeOrAbsolute));StreamReader reader = new StreamReader(streamInfo.Stream);Collection stars = new Collection();while (!reader.EndOfStream) {String dataLine = reader.ReadLine();String[] serializedValues = dataLine.Split(';');stars.Add(new Star(id: Convert.ToInt32(serializedValues[0], CultureInfo.InvariantCulture),x: Convert.ToDouble(serializedValues[3], CultureInfo.InvariantCulture),y: Convert.ToDouble(serializedValues[4], CultureInfo.InvariantCulture),z: Convert.ToDouble(serializedValues[5], CultureInfo.InvariantCulture),spectr: serializedValues[1],luminocity: Convert.ToDouble(serializedValues[6], CultureInfo.InvariantCulture),colorIndex: Convert.ToDouble(serializedValues[2], CultureInfo.InvariantCulture)));}return stars;}}}

VB.NET

Imports System.Collections.ObjectModelImports System.GlobalizationImports System.IOImports System.Windows.ResourcesPublic Class StarDataViewModelDim mStars As IEnumerable(Of Star)Public ReadOnly Property Stars As IEnumerable(Of Star)GetReturn mStarsEnd GetEnd PropertyPublic Sub New()mStars = StarStatisticsLoader.Load("/Data/starsdata.csv")End SubEnd ClassPublic Module StarStatisticsLoaderPublic Function Load(ByVal filepath As String) As IEnumerable(Of Star)Dim streamInfo As StreamResourceInfo = Application.GetResourceStream(New Uri(filepath, UriKind.RelativeOrAbsolute))Dim reader As StreamReader = New StreamReader(streamInfo.Stream)Dim stars As Collection(Of Star) = New Collection(Of Star)()While (Not reader.EndOfStream)Dim dataLine As String = reader.ReadLine()Dim serializedValues As String() = dataLine.Split(";")stars.Add(New Star(id:=Convert.ToInt32(serializedValues(0), CultureInfo.InvariantCulture),x:=Convert.ToDouble(serializedValues(3), CultureInfo.InvariantCulture),y:=Convert.ToDouble(serializedValues(4), CultureInfo.InvariantCulture),z:=Convert.ToDouble(serializedValues(5), CultureInfo.InvariantCulture),spectr:=serializedValues(1),luminocity:=Convert.ToDouble(serializedValues(6), CultureInfo.InvariantCulture),colorIndex:=Convert.ToDouble(serializedValues(2), CultureInfo.InvariantCulture)))End WhileReturn starsEnd FunctionEnd Module
  • 现在,将ViewModel分配给Window.DataContext属性:选择Window,找到DataContext属性,然后单击New按钮。在调用的窗口中,选择GettingStarted.StarDataViewModel类,然后单击OK。
c504c3e2707c434b54fee66fccdff90c.png

准备工作完成,这下一篇文章中将详细说明如何添加Chart3D控件,分配数据和自定义显示设置。

点击下方“了解更多”查看当下流行的界面开发组件!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/244598.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

朋友圈加粗字体数字_数字+符码:医院数码导视系统畅想起来

(建筑平面设计图边缘有横竖轴线编码)医院导视系统要做到最简单、最清晰的表达,和谐地融入室内环境并具有一定的弹性,能够适应变化,并适应未来科技的发展,接纳信息化,与管理、服务互联互通。文 | 谷 建 中衡设计集团股…

苹果x出现绿线怎么修复_苹果x听筒声音小,苹果x通话声音小怎么办

苹果x听筒声音小,苹果x通话声音小怎么办?相信使用苹果x手机的人大多都会遇见这类情况吧。iPhone手机出现听筒声音小的现象,首先我们要确定出现听筒声音小的故障原因是什么,如果是软件方面的原因造成的,就可以自己调试解决&#x…

linux grep -11,11个高级Linux字符类和括号表达式的grep命令

你是否曾经在你需要的一种局面搜索字符串,文字或图案的文件里面呢? 如果是,那么grep工具来在这样的情况下派上用场。grep的是为其匹配一个正则表达式搜索行纯文本数据的命令行实用程序。 如果您将分词的grep如 g/re/p,然后grep的含…

视频图像处理平台对比_对比传统智能结算,戈子视觉结算有了质的改变

相比于使用的RFID原理技术的传统智能结算台,戈子视觉结算台使用的是由戈子科技自主研发的视觉结算系统,其采用的是图像处理技术,通过对餐具扫描识别进行结算。相比于传统智能结算台,其在功能上有很大的提升与创新。戈子视觉结算系…

vs code linux opencv,ubuntu+vscode 测试运行opencv

ubuntuvscode 测试运行opencvubuntuvscode 测试运行opencv之前再ubuntu配置好了opencv,今天测试运行一下。1.创建一个文件夹opencvtest2.在文件夹内打开终端,创建一个cpp文件,再放一张图片。touch mian.cpp3.vim或者文本管理器打开 复制好程序vim命令&am…

wp自定义帖子没标签_拼多多搜索智能推广和自定义推广区别在哪里?

大家好我是牧童,商家在开多多搜索的时候,会发现推广方案中有个智能推广以及自定义推广,很多商家不知道该如何选择,然后就两个计划都建了。之后会发现有的时候智能推广的数据要比自定义推广好,但有的时候智能推广的数据…

python sort 部分元素_Python 简单排序算法-选择、冒泡、插入排序实现

写文章主要是记录自己每天学习的东西,本篇文章主要介绍数据结构中常用的简单的排序算法,虽然这些算法用Python实现起来不是十分的高效,不如c、java之类的运行速度快,应用Python实现主要是为了:1、证明我已经理解了这些…

numpy安装_Python进阶之NumPy快速入门(一)

前言NumPy是Python的一个扩展库,负责数组和矩阵运行。相较于传统Python,NumPy运行效率高,速度快,是利用Python处理数据必不可少的工具。这个NumPy快速入门系列分为四篇,包含了NumPy大部分基础知识,每篇阅读…

wallpaper代码_70 行 python 代码实现壁纸批量下载!

好久没有写文章了,因为最近都在适应新的岗位,以及利用闲暇时间学习python。这篇文章是最近的一个python学习阶段性总结,开发了一个爬虫批量下载某壁纸网站的高清壁纸。注意:本文所属项目仅用于python学习,严禁作为其他…

100g流量在电脑上可以用多久_三大运营商5G体验方案出炉!100G一个月够不够?...

前段时间,工信部向中国移动、中国联通、中国电信、中国广电发放5G商用牌照,这也意味着,我国5G网络正式开始被商用。并且目前三大运营商都已完成了5G网络下的终端组网测试,计划于今年第三季度开始进行试商用。而就在近期&#xff0…

java 获取注释_Java面试题Java语言有哪些注释的方式?

点击上方“千锋Java学院”,选择“置顶公众号”每天一道面试模拟真题及解析课前导读●回复"每日一练"获取以前的题目,持续更新!●我希望大家积极参与!有什么不懂可以加小千微信进行讨论★把面试准备工作,拆分…

密度图的密度估计_箱形图、小提琴图、直方图……统统可以卡通化!

全文共11345字,预计学习时长23分钟或更长对于数据科学家来说,可视化工具比比皆是,因此,退一步去钻研每种可视化的类型及其适用的最佳案例就变得十分重要。为了发挥工具的最佳效用,有时可以考虑将其拟人化,甚…

android 屏幕分辨率 屏幕密度,Android屏幕适配——多分辨率多屏幕密度

为什么要适配,适配的好处等等这里就不说了,直接说我们要怎么适配,请看下面的内容。1.重要概念px:pixel,像素Android原生API,UI设计计量单位,如获取屏幕宽高。屏幕分辨率:指在纵向和横…

操作系统锁的实现方法有哪几种_「从入门到放弃-Java」并发编程-锁-synchronized...

简介上篇【从入门到放弃-Java】并发编程-线程安全中,我们了解到,可以通过加锁机制来保护共享对象,来实现线程安全。synchronized是java提供的一种内置的锁机制。通过synchronized关键字同步代码块。线程在进入同步代码块之前会自动获得锁&…

android长按加入购物车,《Android APP可能有的东西》之UI篇:加入购物车动画

很多电商app的加入购物车的动作会要求加上动画效果:飞进购物车,想来也合理,在listview界面时商品快速加入购物车,一直toast用户加入成功好像不太正常,所以添加一个动画,用户自然就懂了,而且也挺…

基于android 定位系统,基于Android平台定位系统设计和实现

2 0 1 3牟第 1 2期文章编号: 1 0 0 9— 2 5 5 2 ( 2 0 1 3 ) 1 2— 0 1 8 7— 0 4 中图分类号: T P 3 1 6 . 8 9 文献标识码: A基于 A n d r o i d平台定位系统设计和实现李瑞宣,王山东,徐志远,王伶俐(河海…

开发工评价程师自我_常见“自我评价”写作范例

“自我评价”在找工作的时候是一个非常重要的内容,优秀的“自我评价”不仅就可以让别人对你有一个全面的认识,更可以通过寥寥数语就让别人对你产生浓厚的兴趣,让你的求职之路事半功倍。但是怎么写“自我评价”,却是让很多人犯愁的…

visual studio 调试python_Visual Studio Code Python 调试设置

很意外Visual Studio Code居然支持Python代码的断点调试。一起来配置一下。工具/原料 Visual Studio Code 1.1 Python 2.7.11 方法/步骤 1 首先,当然是要先安装插件,配置Python环境。这个大家看这个文章 2 环境配置完成后,我们点击调试按钮&a…

leetcode c程序总提示主函数_Matlab系列之函数嵌套

昨天的那一篇讲的几个函数,不知道你们理解的如何,是否懂得怎么去使用了,如果还没懂,一定要再多看几遍,并且去在软件上进行实操,今天的话,将要介绍一下函数的嵌套,不过在正式讲嵌套之…

华为手机出现android啥意思,传华为正研发手机系统,如果脱离安卓系统,还有啥能阻止华为前进...

原标题:传华为正研发手机系统,如果脱离安卓系统,还有啥能阻止华为前进自从国产手机正式进入了智能手机时代之后,中华酷联的中兴、酷派、联想早已经被华为甩在了身后。虽然现在国产手机已经呈现出华为、小米、OPPO、vivo四足鼎立的…