日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

二、Silverlight中使用MVVM(二)——提高

發布時間:2023/11/27 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 二、Silverlight中使用MVVM(二)——提高 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在第一篇文章中的示例中,我們已經簡單的了解了應用MVVM模式的流程,我的本意是你已經了解了一點MVVM的概念,然后又沒有一個較好的例子學習,可以跟著我一起學習MVVM模式,所以這個部分,都是沒有理論知識的,當然整個例子學完后,我們會回過頭探討一下,將其總結出來。

現在我們主要在前面的示例上進行擴展,前面的示例中我們主要是將一個源對象綁定到DataGrid中的,接下來我們繼續使用MVVM模式,將DataGrid選擇行的變化體現界面中,其實通過這個需求變化,你會發現UI與邏輯分離帶來的優勢,盡管才開始似乎有點不習慣,但是相信你會不自覺的在項目傾向于中使用MVVM模式。

????? 需求:通過單擊DataGrid,將當前的選擇行的數據反映到TextBox中。

????? Model未發生變化,我們還用前面的Person.cs和Persons.cs兩個類,那么對于ViewModel,我們給其增加一個屬性

??????? private Person _getOnePerson;
??????? public Person GetOnePerson
??????? {
??????????? get { return _getOnePerson; }
??????????? set { _getOnePerson = value;
??????????? if (PropertyChanged != null)
??????????? {
??????????????? PropertyChanged(this, new PropertyChangedEventArgs("GetOnePerson"));
??????????? }
??????????? }
??????? }

????? 因為這里的屬性將發生變化,所以我們對PageViewModel類實現了INotifyPropertyChanged借口

????? UI層: 這里我們將GetOnePerson屬性綁定到DataGrid的SelectedItem屬性上

??????? <data:DataGrid AutoGenerateColumns="True" ItemsSource="{Binding Human}" 
?????????SelectedItem="{Binding GetOnePerson,Mode=TwoWay}"
??????? Height="200"? Name="dataGrid1" VerticalAlignment="Top" />
??????? <TextBox Text="{Binding GetOnePerson.age,Mode=OneWay}" 
????????Name="textBox1" VerticalAlignment="Top" Width="120" />
??????? <TextBox Text="{Binding GetOnePerson.name,Mode=OneWay}" 
????????Name="textBox2" VerticalAlignment="Top" Width="120" />

???? 我們在UI上增加了2個TextBox,用于反映頁面上的變化,主要就是注意一下Binding的對象

????? 這些都完成后,其它部分就不用改動了,我們已經完成了這個功能,我們可以看看頁面的效果:???????? ??????????????????????????????????????????????????????????????????????

?????????????????????????????????????????

?

???????????????????????????????????????????????????????? 單擊前后的變化?????????????

功能雖較為簡單,但是剛接觸MVVM時, 要很順利的實現也不算是一件容易的事情,后面我會在這個例子的基礎上,通過使用Command實現一個較簡單的查詢。

轉載于:https://www.cnblogs.com/liuguanghai/p/3225975.html

總結

以上是生活随笔為你收集整理的二、Silverlight中使用MVVM(二)——提高的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。