日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

WPF是新的界面UI機(jī)制,比WinForm靈活,但是用習(xí)慣了WinForm的程序員,可能對(duì)WPF的一些技術(shù)比較陌生,這里用一些比喻來(lái)引導(dǎo)理解下WPF的MVVM特點(diǎn)和WPF的MVVM理解。

C#的WinForm里界面窗口數(shù)據(jù)是一體的,數(shù)據(jù)相當(dāng)于窗口的一個(gè)屬性,這個(gè)對(duì)理解MVVM不太友好,我們換個(gè)方向,在MFC的對(duì)話框里有DDX機(jī)制DoDataExchange函數(shù),此函數(shù)負(fù)責(zé)界面上數(shù)據(jù)和控件互相轉(zhuǎn)換,觸發(fā)轉(zhuǎn)換需要調(diào)用UpdateData函數(shù),從這點(diǎn)理解WPF的MVVM就好辦了,把DDX機(jī)制比喻換個(gè)名稱到MVVM里,就是數(shù)據(jù)綁定,為什么要數(shù)據(jù)綁定?xaml里的界面和cs代碼文件沒(méi)有直接關(guān)系,是隔離開(kāi)的,有了數(shù)據(jù)綁定,才能讓數(shù)據(jù)顯示到界面或從界面上采集數(shù)據(jù)。數(shù)據(jù)綁定位于View和ViewModel之間,但這不是MVVM的全部。

VM,即ViewModel,里面有個(gè)消息機(jī)制,注意不是Win32開(kāi)發(fā)里的消息隊(duì)列機(jī)制,是ViewModel通知xaml界面部分的機(jī)制,這機(jī)制如果放到整個(gè)體系里理解,就好理解了,在WinForm的CS開(kāi)發(fā)體系里,S負(fù)責(zé)數(shù)據(jù),C顯示數(shù)據(jù),S的數(shù)據(jù)到C端也肯定是要有機(jī)制的,不可能憑空去讓C端刷新。

有了數(shù)據(jù)綁定和數(shù)據(jù)交換,再加上消息通知,這就是MVVM的核心,也是WinForm和MFC對(duì)話框DDX的核心,無(wú)非是WPF下?lián)Q了xaml,而WinForm里是資源文件,MFC里是rc文件。但是資源文件和rc文件再怎么擴(kuò)展也不如xaml形式的靈活,xaml也是抄h(huán)tml+css的形式,我在VS里看xaml里控件的屬性窗口,和DreamWeaver里看html元素屬性窗口,有似曾相似的感覺(jué)。不過(guò)xaml屬性窗口內(nèi)容更多,初學(xué)者也會(huì)覺(jué)得復(fù)雜。

MVVM里的M也好理解,規(guī)范了數(shù)據(jù)形式,好處理數(shù)據(jù)。

MVVM里還有很多細(xì)節(jié),比如服務(wù)、Mediator和視圖注冊(cè)等等,所以一些MVVM庫(kù)也應(yīng)運(yùn)而生,比如MVVMLight、Prism和微軟的Toolkit.mvvm,有這些庫(kù)支持,開(kāi)發(fā)會(huì)容易一些。

分享到:
標(biāo)簽:WPF
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定