999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MVVM架構的礦井水文監測系統軟件設計與實現

2016-10-11 11:34:01董建梁
中國科技信息 2016年17期
關鍵詞:界面系統

李 鵬 董建梁 呂 琦

中煤科工集團西安研究院有限公司

基于MVVM架構的礦井水文監測系統軟件設計與實現

李 鵬 董建梁 呂 琦

中煤科工集團西安研究院有限公司

對煤礦水文數據進行監測是進行水害防治的主要手段之一。實現水文監測數據采集和觀測的自動化系統,可以高效地實現對原始數據的處理及二次分析。本文基于WPF編程技術和MVVM設計模式相結合方式,開發的水文監測系統模擬顯示了監測站點位置并在軟件中加入了實時地圖,使數據的觀測更加直觀。

煤礦水害是威脅煤礦生產安全的重大災害之一。針對礦井水害預測問題,本文研究開發基于MVVM設計模式的礦井水文自動監測系統。礦井水文監測系統能夠自動的采集井下和地面的水壓、水位、流量、降雨量等水文數據,并自動的傳輸到監控中心,在出現異常時能夠自動的報警,提示相關部門采取防范措施,確保煤礦安全生產,降低災害損失。特別是在一些水文地質條件復雜的地區,管理難度很大,使用水文監測系統能夠有效地提高工作效率,加強水文地質災害的防治。

系統設計

系統框架

本系統的開發整體架構采用了C/S模式,也就是客戶端/服務器模式。為了實現界面的圖形顯示效果,降低界面與業務邏輯的耦合度以及提高代碼的復用性,軟件的開發使用了WPF的MVVM模式。

系統功能模塊

水文實時監測系統軟件功能主要包括實時數據顯示、數據查詢、生成曲線、生成報表、系統參數設置、用戶管理、GSM水情遙測、GPRS水情遙測、OPC工業接口以及礦井設備布局圖顯示等功能。

開發環境

系統開發使用微軟最新開發工具Vistual Studio 2015實現。界面設計應用兩種工具:微軟的 Expression Blend 4和 Visual Studio 2015。其中,Expression Blend 4主要負責界面設計,包括控件的布局,背景色,界面的樣式及自定義控件等,有助于設計出更加漂亮的界面與動畫;VisualStudio 2015主要完成界面上按鈕的響應及界面之間的跳轉,完成系統與用戶之間的信息交互。

圖1 系統總體框架

圖2 系統功能結構圖

MVVM設計模式在系統中的應用

MVVM

WPF(Windows Presentation Foundation)是一套基于.Net Framework、XML、矢量繪圖技術的展示層開發框架。WPF使用一種新的XAML(eXtensible Application Markup Language)語言來開發介面,將界面開發和后臺邏輯完美的分離,降低了耦合度,使用戶界面設計師與程序開發者跟好的合作,降低維護和更新成本。

MVVM(Model-View-ViewModel)是一種WPF的新型軟件設計模式。Model代表業務邏輯的實體類,可以是簡單的用戶實體類,也可以是復雜的期貨交易實體類;View指用戶界面或者承載了子控件的控件集合,主要響應業務邏輯傳來的數據及狀態變化等等,一個WPF窗口、一個Silverlight頁面或者簡單的XAML數據控件都可以作為View;ViewModel主要處理View和Model之間的業務關系,包括各種邏輯、命令、事件及實體類的引用。MVVM架構將其中的View的狀態和行為抽象化,讓我們可以將UI和業務邏輯分開,ViewModel取出 Model 的數據同時幫忙處理View中由于需要展示內容而涉及的業務邏輯。

圖4 系統主界面

圖5 某煤礦地面衛星圖

MVVM在系統中的應用

本軟件系統主要使用了MVVM設計模式的四大模塊:ObservableObject基 類、RelayCommand接 口、Messager通信機制和PropertyObserver。

系統主界面(圖4)的數據刷新通過ObservableObject實現ViewModel中的屬性改變通知到綁定的控件的方法,相當于是所有Viewmodel的基類,使用時調用OnPropertyChange方法,則后臺數據變化即可通知界面刷新。圖中左側圖形界面的測點數據更新應用了OnPropertyChange方法。

圖4中上部的按鈕全都采用了RelayCommand接口,在ViewModel中定義View中綁定的命令,代替了以前Winform的Click事件。

在ViewModel中定義Command:

在View中的按鈕管理該Command:

Messager信息機制主要用于ViewModel之間以及ViewModel和View之間的信息傳遞。

定義信息傳輸類:

在需要通知的類中注冊要通知的信息

當對應的消息出現時,通知已經注冊的類

PropertyOberver主要用于對對象的屬性監聽,屬性變更后可觸發已注冊的回調函數。

注冊要監聽對象的屬性及回調函數

WPF與Baidu Map的結合

百度地圖是百度提供的一項網絡地圖搜索服務,覆蓋了國內近400個城市、數千個區縣。可以通過百度提供的Baidu Map API進行二次開發,實現煤礦地面水文監測系統遙測分站的定位和顯示。運用Baidu Map JavaScript創建水文監測系統地面遙測地圖,通過遙測分站位置的經緯坐標在地圖上可標記處具體位置,進行實時監測,并開發了地圖放大、縮小等功能。

程序使用WPF的WebBrowser將Baidu Map的HTML文件加載到程序中,當安裝程序的主機與因特網連接時,實時更新百度地圖;當主機無法連接因特網時,將使用提前下載好的離線地圖顯示。WPF通過調用HTML文件中的JavaScript與Baidu Map進行交互,此時可以使用WebBrowser的InvokeScript方法調用JavaScript,例如:

webbrowser.InvokeScript(“MeikuangMap”)。

結束語

經過整體測試和煤礦世紀應用,實現了煤礦井上下水文觀測孔水壓、水位、水溫、采空區水位、排水明渠、管道流量的實時監測及閥門的遠程控制。采用基于WPF的編程技術和MVVM設計模式編制的上位機監測軟件,提高了人機交互的能力和軟件界面的美觀性,使用軟件模擬監測站點位置并在軟件中加入了百度地圖,使數據的觀測更加直觀。MVVM框架的應用也使得系統設計流程更加規范,通過Model、View、View Model之間的交互實現了界面設計與后臺邏輯代碼的分離,封裝了對象與數據庫之間的交互,建立了一個易于維護,便于測試,有良好的擴展性的應用系統。

猜你喜歡
界面系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
人機交互界面發展趨勢研究
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 婷婷五月在线| 国产sm重味一区二区三区| 日韩久草视频| 婷婷丁香在线观看| 国产亚洲欧美在线视频| 一区二区三区四区精品视频| 伊人久久大线影院首页| 亚洲人在线| 国产第一页亚洲| 亚洲网综合| 亚洲区视频在线观看| 在线欧美日韩| 色婷婷色丁香| 国产杨幂丝袜av在线播放| 免费观看国产小粉嫩喷水| 国产黄色爱视频| 国产成人AV男人的天堂| 亚洲最大综合网| 亚洲欧洲日韩国产综合在线二区| 国产美女91呻吟求| 久久精品无码中文字幕| 国产成人精品一区二区三在线观看| 欧美国产精品拍自| 多人乱p欧美在线观看| 国产理论精品| 日韩国产精品无码一区二区三区| 精品无码人妻一区二区| 在线人成精品免费视频| 91久久偷偷做嫩草影院精品| 沈阳少妇高潮在线| 久久综合亚洲鲁鲁九月天| 国产美女免费| 国产成人免费高清AⅤ| 日本一区高清| 欧美精品一区在线看| 亚洲欧州色色免费AV| 毛片网站观看| 99这里只有精品免费视频| 久久国产亚洲欧美日韩精品| 欧美日韩国产系列在线观看| 欧美国产在线一区| 国产精品第页| 女人一级毛片| 婷婷综合亚洲| 欧美亚洲国产精品久久蜜芽| 亚洲无码视频图片| 1级黄色毛片| 三级视频中文字幕| 鲁鲁鲁爽爽爽在线视频观看| 亚洲天堂视频在线播放| 国产精品福利尤物youwu| 欧美国产在线精品17p| 亚洲免费毛片| 高h视频在线| 少妇精品久久久一区二区三区| 欧美成人看片一区二区三区| 国产精品亚洲专区一区| 日韩av电影一区二区三区四区| 精品久久人人爽人人玩人人妻| 天天综合网在线| 国产JIZzJIzz视频全部免费| 91成人免费观看| 亚洲综合欧美在线一区在线播放| 九月婷婷亚洲综合在线| 无码在线激情片| 欧美性精品| 久久婷婷综合色一区二区| 色天天综合久久久久综合片| 无码国产偷倩在线播放老年人| 99热在线只有精品| 婷婷激情五月网| 中国精品自拍| 午夜在线不卡| 亚洲成年网站在线观看| 国产玖玖玖精品视频| 国产va免费精品观看| 91久久精品日日躁夜夜躁欧美| 国产一区免费在线观看| 激情综合激情| 欧洲日本亚洲中文字幕| 免费A∨中文乱码专区| 精品无码一区二区三区在线视频|