DevExpress的进度条控件ProgressBarControl的使用-以ZedGraph添加曲线进度为例
生活随笔
收集整理的這篇文章主要介紹了
DevExpress的进度条控件ProgressBarControl的使用-以ZedGraph添加曲线进度为例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
Winform控件-DevExpress18下載安裝注冊以及在VS中使用:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100061243
在使用ZedGraph進行添加曲線時,曲線數量如果很多的情況下,速度會比較慢。
所以在進行添加曲線的過程中需要顯示進度,效果如下
?
注:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
在當前要添加進度條的頁面打開設計器,并在安裝了DevExpress的工具箱中拖拽一個ProgressBarControl
?
然后在當前窗體的構造方法中進行進度條控件的一些屬性設置
public FrmCurveCompareInOne(){InitializeComponent();progressBarControl1.Visible = true;//設置一個最小值progressBarControl1.Properties.Minimum = 0;//設置一個最大值progressBarControl1.Properties.Maximum = 100;//設置進度條的樣式progressBarControl1.Properties.ProgressViewStyle = DevExpress.XtraEditors.Controls.ProgressViewStyle.Solid;//當前值progressBarControl1.Position = 0;//是否顯示進度數據progressBarControl1.Properties.ShowTitle = true;//是否顯示百分比progressBarControl1.Properties.PercentView = true;}然后在觸發顯示進度條的方法中傳遞當前進度條對象
ChartCompareHelper.RefreshPaneComInOne(this.zedGraphControl1, xYModelStore.YAxisModelList,this.progressBarControl1);在上面刷新ZedGraph的圖形的方法中,添加曲線的部分進行進度的設置
?if (yList != null && yList.Count > 0){PointPairList list = null;for (int i = 0; i < yList.Count; i++){//截取前100個循環進行顯示Global.Instance.PrepareCompareDataInOne = Global.Instance.PrepareCompareDataInOne.Where(p => (int.Parse(p.Id) < 101)).ToList();//計算進度條步長int step = 1;//曲線總數小于100if (Global.Instance.PrepareCompareDataInOne.Count < 100){step = 100 / Global.Instance.PrepareCompareDataInOne.Count;}else{step = Global.Instance.PrepareCompareDataInOne.Count / 100;}if(progressBar !=null){//將進度條初始化為0%progressBar.Position = 0;}//循環添加曲線foreach(DataTreeNode node in Global.Instance.PrepareCompareDataInOne){IEnumerable<Entity.Record> record =? Global.Instance.VirtualData.RecordDataList.Where(p => p.CycleIndex == int.Parse(node.Id));list = SetCurveTextInOne(yList[i].TitleKey,record);LineItem myCurve = myPane.AddCurve(yList[i].Title, list, System.Drawing.ColorTranslator.FromHtml(yList[i].Color), SymbolType.None);myCurve.YAxisIndex = i;???????????????????????????????????????????????????????????????? //很關鍵,對應使用那個坐標值if(progressBar !=null){//添加成功一條曲線則進度條增加一個步數progressBar.Position += step;if (progressBar.Position >=100){//如果總進度已經大于100了 則賦值為100progressBar.Position = 100;}//更新進度條的進度progressBar.Update();}}if (progressBar != null){//最終添加完所有曲線后將進度條設置為100%progressBar.Position = 100;}}?
總結
以上是生活随笔為你收集整理的DevExpress的进度条控件ProgressBarControl的使用-以ZedGraph添加曲线进度为例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Winform中封装DevExpress
- 下一篇: Winform中设置ZedGraph鼠标