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,一经查实,立即删除!

相关文章

反向题在测试问卷信效度_(完整版)问卷信度效度检验

从统计数据质量角度谈调查问卷的设计质量一、引言从保证统计数据质量的统计工作过程看,统计数据质量可以被划分为统计设计质量、统计调查质量、统计整理质量、统计分析质量以及数据发布传输质量等。统计设计质量是保证统计数据质量的首要环节,在统计数据…

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

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

linux用光盘作yum源实验步骤,Linux使用系统光盘作为YUM源

CentOS 使用方法挂载光盘Linux代码# mkdir /media/cdrom# mount /dev/cdrom /media/cdromyum源文件说明在 /etc/yum.repos.d/ 目录中有CentOS-Base.repo和CentOS-Media.repo两个文件CentOS-Base.repo 记录的是网络上的资源信息CentOS-Media.repo 记录的光盘上的资源信息&#x…

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

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

wxpython输入框_基于wxPython的GUI实现输入对话框(1)

本文实例为大家分享了基于wxpython的gui实现输入对话框的具体代码,供大家参考,具体内容如下编程时,免不了要输入一些参数等,这时输入对话框就派上用处了:#-*- coding:utf-8 -*-#~ #-------------------------------------------------------------------…

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

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

tortoisegitpull 并合_tortoiseGIT 本地分支创建合并

接下来是使用tortoiseGIT二、图解使用tortoiseGIT这里只是做一些最基本的功能的演示:创建版本库,提交(commit)文件,推送(push)文件,更新文件,创建分支。简介:git属于分布式版本控制器,其实每个人…

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

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

C语言中字符型和浮点型能否相加,C语言中数据结构的基本类型(整型、浮点型和字符型)...

#include int main(){/**********************************************************// 我们列出的是VS2008的内存占用情况// 一、整型变量的分类:// 1,基本整型,以int表示// 2,短整型,以short int表示,或以…

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大部分基础知识,每篇阅读…

gc java root_聊聊Java的GC机制

原标题:聊聊Java的GC机制近日,MIUI在小米全球社区发布公告,表示MIUI将在全球市场销售的手机中预装谷歌拨号及谷歌消息应用程序(中国、印度、印度尼西亚等市场除外)。小米表示,小米9T Pro之后的设备在全球范围内都将会预装上述两款…

c语言课程设计 第2版,c语言课程设计报告模版(电子版)2.pdf

c语言课程设计报告模版(电子版)2大连交通大学 软件学院 C语言课程设计报告SOFTWARE INSTITUTEOF DALIAN JIAOTONG UNIVERSITY EXPERIMENT DESIGNINGC语言课程设计报告Course Design reporter课程名称 : C语言课程设计英文名称 : Course Design of C Programming专 业…

jmeter跨线程组传多个值_Jmeter 跨线程组传递参数 之两种方法(转)

终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直到登录接口的参数…

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

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

c语言调用go函数,C中调用go中的回调函数

在用go包装某些c库时(如glut),需要将go函数当作回调函数传递给c库(如glutDisplayFunc(&draw)中的draw函数,我想将go写的函数传过去),应该怎么做?我写了一个示例,但一直不成功,不知道为什么?…

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

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

easyui一行显示多行_easyui datagrid以及oracle中的多行合并一行

页面显示:前端代码:toolbar"#toolbar" rownumbers"true" singleSelect"true" fitColumns"true">大箱码关联的箱码(不同箱码用分号分开,相同箱码用逗号分开)关联数量data-options"total: 0,pageSize:15,pageList: […