C#-WPF-控件-CartesianChart圖表-線性3(LineSeries)-MVVM模式(封裝數(shù)據(jù)綁定類)
知識(shí)點(diǎn)1. 數(shù)據(jù)綁定數(shù)據(jù)綁定類 與 圖形操作在同一個(gè)類中2. X軸上顯示點(diǎn)數(shù)主類 中3. 添加隨機(jī)值在圖表中 值針對(duì)Y軸值4. 清空?qǐng)D表5. 圖標(biāo)titel顯示實(shí)例圖表控件綁定 SeriesCollectionA Utils_ChartA.cs中l(wèi)vc:CartesianChart x:NameLiveChartsA Margin10,146,185,51 Series{Binding SeriesCollectionA} Background#FFF8FCFD LegendLocationTop /lvc:CartesianChart提示框綁定 MsgTips Utils_ChartA.cs中Label Grid.Row2 Grid.Column0 FontSize12 Background#22FF0000 Content{Binding MsgTips} /Utils_ChartA.cs(數(shù)據(jù)綁定類 與 圖形操作在同一個(gè)類中)using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Text; using System.Windows.Media; using LiveCharts; using LiveCharts.Wpf; namespace Wpf_Math.MyUC_TestChart { public class Utils_ChartA : INotifyPropertyChanged { private string _msgTips; private SeriesCollection _seriesCollectionA; public Utils_ChartA() { // 在構(gòu)造函數(shù)中初始化 _seriesCollectionA new SeriesCollection(); } public string MsgTips { get _msgTips; set { _msgTips value; OnPropertyChanged(); } } public SeriesCollection SeriesCollectionA { get _seriesCollectionA; set { if (_seriesCollectionA ! value) { _seriesCollectionA value; OnPropertyChanged(); } } } public void InitializeLiveCharts1(int XPonitLength) { if (XPonitLength 0) XPonitLength 100; LineSeries myLineseries new LineSeries() //實(shí)例化一條折線圖 { Title M485-----電壓測(cè)試圖, //設(shè)置折線的標(biāo)題 StrokeThickness 1, // 設(shè)置折線粗細(xì) LineSmoothness 1, //折線圖直線形式 0 or 1 PointGeometry null, //折線圖的無點(diǎn)樣式 Stroke Brushes.Red, // 紅色線條 Values new ChartValuesdouble(new Double[XPonitLength]) //添加折線圖的數(shù)據(jù)(X軸劃分點(diǎn)數(shù)) }; SeriesCollectionA.Add(myLineseries); } public void addData(double n) { //通過Dispatcher在工作線程中更新窗體的UI元素 Debug.Write(n n \r\n); SeriesCollectionA[0].Values.Add(n); SeriesCollectionA[0].Values.RemoveAt(0); } public void Clear(CartesianChart Chart) { Chart.Series.Clear(); //清空數(shù)據(jù) InitializeLiveCharts1(0); //重復(fù)新初始化 } public event PropertyChangedEventHandler? PropertyChanged; protected void OnPropertyChanged([CallerMemberName] string name null) PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name)); } }主操作界面using System; using System.Collections.Generic; using System.Diagnostics; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using LiveCharts; using LiveCharts.Wpf; namespace Wpf_Math.MyUC_TestChart { public partial class UC_ChartA : UserControl { int i; Utils_ChartA ChartA new Utils_ChartA(); public UC_ChartA() { InitializeComponent(); this.DataContext ChartA; ChartA.MsgTips 提示; ChartA.InitializeLiveCharts1(0); } private void Button_Click(object sender, RoutedEventArgs e) { Button button (Button)sender; ChartA.MsgTips 你點(diǎn)擊了-- button.Content i; //Debug.Write(你點(diǎn)擊了--btn_calulate\\r\n) switch (button.Name) { case btn_addA: { ChartA.addData(new Random().Next(0, 30)); break; } case btn_addB: { ChartA.addData(new Random().Next(80, 99)); break; } case btn_clear:{ ChartA.Clear(LiveChartsA);break;} default: break; } } } }將持續(xù)更新

相關(guān)新聞

Python操作MySQL數(shù)據(jù)庫進(jìn)階指南:連接池與事務(wù)管理

Python操作MySQL數(shù)據(jù)庫進(jìn)階指南:連接池與事務(wù)管理

1. Python操作MySQL數(shù)據(jù)庫全景指南作為數(shù)據(jù)驅(qū)動(dòng)應(yīng)用的核心組件,數(shù)據(jù)庫操作一直是Python開發(fā)者必須掌握的硬技能。MySQL作為最流行的開源關(guān)系型數(shù)據(jù)庫,與Python的配合堪稱黃金組合。但很多開發(fā)者停留在基礎(chǔ)CRUD階段,對(duì)連接池、事務(wù)管理等進(jìn)階用…

2026/7/28 20:04:41 閱讀更多
利用美國(guó)教育郵箱低成本獲取AI開發(fā)工具權(quán)限:Dify部署與Claude注冊(cè)實(shí)戰(zhàn)指南

利用美國(guó)教育郵箱低成本獲取AI開發(fā)工具權(quán)限:Dify部署與Claude注冊(cè)實(shí)戰(zhàn)指南

如果你最近在嘗試部署 Dify 或者想體驗(yàn) Claude 的最新模型,比如 Claude 3.5 Sonnet 或 Claude 3 Opus,那么一個(gè)繞不開的坎就是: 你需要一個(gè)能通過嚴(yán)格驗(yàn)證的郵箱來注冊(cè)和綁定這些服務(wù)。 無論是 Dify 的郵件驗(yàn)證,還是 Anthropic 官方對(duì) Claude 賬號(hào)的審核,一個(gè)普通的個(gè)人…

2026/7/28 20:04:41 閱讀更多
AI學(xué)術(shù)寫作工具:六維提升研究效率與質(zhì)量

AI學(xué)術(shù)寫作工具:六維提升研究效率與質(zhì)量

1. 項(xiàng)目概述:AI如何重塑學(xué)術(shù)寫作體驗(yàn)去年指導(dǎo)本科生論文時(shí),我發(fā)現(xiàn)一個(gè)有趣現(xiàn)象:90%的學(xué)生把80%時(shí)間花在格式調(diào)整、文獻(xiàn)引用和語言潤(rùn)色上,真正用于思考研究問題的時(shí)間不足20%。這種現(xiàn)象催生了"書匠策AI"的雛形——一個(gè)?!?/p>

2026/7/29 2:46:00 閱讀更多
nmcli網(wǎng)絡(luò)管理實(shí)戰(zhàn):從基礎(chǔ)配置到服務(wù)器網(wǎng)卡綁定(Bonding)詳解

nmcli網(wǎng)絡(luò)管理實(shí)戰(zhàn):從基礎(chǔ)配置到服務(wù)器網(wǎng)卡綁定(Bonding)詳解

1. 從命令行到網(wǎng)絡(luò)穩(wěn)定:為什么我選擇nmcli管理網(wǎng)絡(luò)在服務(wù)器和虛擬化平臺(tái)的管理中,網(wǎng)絡(luò)配置的穩(wěn)定性和靈活性是基石。過去,我們習(xí)慣于直接編輯/etc/sysconfig/network-scripts/目錄下那些以ifcfg-開頭的配置文件,或者使用ifconfig、…

2026/7/29 2:46:00 閱讀更多
ROS語音交互實(shí)戰(zhàn):基于Vosk的離線語音控制機(jī)器人系統(tǒng)搭建

ROS語音交互實(shí)戰(zhàn):基于Vosk的離線語音控制機(jī)器人系統(tǒng)搭建

1. 項(xiàng)目概述:從“小海龜”到“會(huì)說話的機(jī)器人”如果你已經(jīng)跟著教程跑通了ROS的“小海龜”例程,讓那個(gè)小三角在屏幕上轉(zhuǎn)了幾圈,心里可能會(huì)想:這確實(shí)很酷,但離我心目中那個(gè)能聽會(huì)動(dòng)、能交互的智能機(jī)器人似乎還差了點(diǎn)意思…

2026/7/29 2:46:00 閱讀更多
基于Exif解析與人臉聚類的照片智能分類整理方案與實(shí)踐

基于Exif解析與人臉聚類的照片智能分類整理方案與實(shí)踐

一、引言我最近在整理自己積累多年的照片庫時(shí),遇到了一個(gè)非常實(shí)際的問題:手機(jī)相冊(cè)常年維持在2萬張照片,電腦里還有幾個(gè)TB的歷史照片庫。每次想找某張照片,都得在文件夾里翻很久。于是我花了一些時(shí)間調(diào)研了市面上主流的照片智能管理…

2026/7/29 2:46:00 閱讀更多
菜鳥心得001

菜鳥心得001

LeetCode字符串簡(jiǎn)單題13:羅馬數(shù)字轉(zhuǎn)整數(shù) 思路:根據(jù)ds,本題用字典才是最簡(jiǎn)單最快的方法,但是由于本人還沒學(xué)字典的用法,所以第一反應(yīng)是用笨拙的逐字循環(huán)讀取,根據(jù)已知條件計(jì)算求和。 問題和方案&#xff1a…

2026/7/29 2:46:00 閱讀更多
Proxmark3高級(jí)應(yīng)用:EMV銀行卡與FIDO安全密鑰協(xié)議分析與安全評(píng)估實(shí)戰(zhàn)

Proxmark3高級(jí)應(yīng)用:EMV銀行卡與FIDO安全密鑰協(xié)議分析與安全評(píng)估實(shí)戰(zhàn)

1. 項(xiàng)目概述:從“讀卡器”到“安全分析儀”的認(rèn)知躍遷如果你手頭有一臺(tái)Proxmark3,卻還只停留在復(fù)制門禁卡、克隆低頻ID卡的階段,那無疑是“殺雞用牛刀”,甚至可以說是暴殄天物。這臺(tái)被圈內(nèi)人戲稱為“瑞士軍刀”的射頻安全工具&…

2026/7/29 2:36:00 閱讀更多
面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

前兩個(gè)月,我在重構(gòu) AlgoMooc 網(wǎng)站過程中,發(fā)現(xiàn)一個(gè)問題:在 Claude Code 里把一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,結(jié)果可能比 1 個(gè) agent 從頭干到尾還慢? 大多數(shù)人的第一反應(yīng)是反過來的:活是并行干的&#…

2026/7/29 0:15:24 閱讀更多
# 鴻蒙 HarmonyOS 應(yīng)用開發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫渲染精講

# 鴻蒙 HarmonyOS 應(yīng)用開發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫渲染精講

一、應(yīng)用概述 骰子(Dice Roller) 是一款經(jīng)典的休閑娛樂應(yīng)用,模擬了真實(shí)擲骰子的過程。應(yīng)用投擲兩個(gè)骰子(六面標(biāo)準(zhǔn)骰),使用 Unicode 骰面符號(hào)直觀展示每個(gè)骰子的點(diǎn)數(shù),并伴有快速滾動(dòng)的動(dòng)畫效果。…

2026/7/29 0:15:24 閱讀更多