Silverlight中使用MvvM 2 提高

2021-06-19 00:52:59 字數 1539 閱讀 3354

在第一篇文章中

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

現在我們主要在前面的示例上進行擴充套件,前面的示例中我們主要是將乙個源物件繫結到datagrid中的,接下來我們繼續使用mvvm模式,將datagrid選擇行的變化體現介面中,其實通過這個需求變化,你會發現ui與邏輯分離帶來的優勢,儘管才開始似乎有點不習慣,但是相信你會不自覺的在專案傾向於中使用mvvm模式。

需求:通過單擊datagrid,將當前的選擇行的資料反映到textbox中。

model未發生變化,我們還用前面的person.cs和persons.cs兩個類,那麼對於viewmodel,我們給其增加乙個屬性

private person _getoneperson;
public person getoneperson
set
}
}
因為這裡的屬性將發生變化,所以我們對pageviewmodel類實現了inotifypropertychanged藉口

ui層: 這裡我們將getoneperson屬性繫結到datagrid的selecteditem屬性上

<

data:datagrid

autogeneratecolumns="true"

itemssource=""

selecteditem=""
height="200"

name="datagrid1"

verticalalignment="top"

/>

<

textbox

text=""

name="textbox1"

verticalalignment="top"

width="120"

/>

<

textbox

text=""

name="textbox2"

verticalalignment="top"

width="120"

/>

我們在ui上增加了2個textbox,用於反映頁面上的變化,主要就是注意一下binding的物件

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

單擊前後的變化             

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

如何在Silverlight中使用Cookie

cookie是我們在瀏覽器中經常用到的乙個儲存方式,他操作簡便容易讀取容易維護,可能有人在想在silverlight中能使用cookie嗎?答案是必然的 下面就讓我來為大家介紹一下在sl中使用cookie的方法吧 建立乙個cookie還會用到我們的老朋友 htmlpage.document 建立co...

Silverlight 中使用中文字型

hongcing.silverlight.font.mainpage xmlns xmlns x 洪星的部落格 aa1 預設字型 fontsize 36 margin 10 洪星的部落格 bb2 微軟雅黑 fontfamily fonts fonts.zip microsoft yahei font...

php中使用mysql介紹 PHP中使用MySQL

mysql資料庫的擴充套件 擴充套件庫基本功能相似,用法基本相同,會增加一些新的特性 mysqli擴充套件庫 只能對mysql資料庫操作 pdo擴充套件 可以操作很多態別的資料庫 wamp下修改mysql資料庫密碼 三者在建立連線上的比較 pdo需要四個引數,除了資料庫管理員名稱 密碼 host 還...