顯示我們的StoryDetailsView控件
讓我們的StoryDetailsView用戶控件出現(xiàn)在屏幕上的一個(gè)簡單的方式是把它加在Page.xaml文件的底部,然后將其默認(rèn)的Visibility屬性設(shè)成Collapsed(意味著在應(yīng)用裝載時(shí)是不可見的):
點(diǎn)擊放大
然后我們在Page.xaml的后臺代碼類中處理ListBox 控件的SelectionChanged事件:
當(dāng)用戶選擇列表中的一個(gè)特定故事時(shí),我們可以使用ListBox 的 SelectionChanged事件將 ShowDetailsView 用戶控件的Visibility屬性設(shè)成“Visible”:
這會(huì)導(dǎo)致我們的模式用戶控件對話框出現(xiàn),在用戶點(diǎn)擊它的“Close(關(guān)閉)”按鈕時(shí),它就會(huì)消失,用戶就可以隨意選擇另一個(gè)故事,重復(fù)這個(gè)過程。
把故事數(shù)據(jù)傳入我們的StoryDetailsView用戶控件
最終我們想要我們的StoryDetailsView用戶控件顯示跟終端用戶在故事ListBox中選擇的故事有關(guān)的詳細(xì)信息。
在我們的ListBox的SelectionChanged事件處理函數(shù)中(在我們的page的后臺代碼類中),我們可以通過ListBox的SelectedItem屬性獲取對應(yīng)于用戶所選擇的ListBox中的條目行的那個(gè)DiggStory數(shù)據(jù)對象。
我們可以用來把這個(gè) DiggStory 對象傳入我們的StoryDetailsView用戶控件的一個(gè)做法是,就在顯示用戶控件之前,把用戶控件上的DataContext屬性設(shè)置成所選擇的DiggStory故事對象:
然后我們在我們的用戶控件內(nèi)編寫代碼,使用DataContext來顯示結(jié)果,或者我們也可以使用數(shù)據(jù)綁定表達(dá)式綁定其值。
例如,我們可以象下面這樣更新StoryDetailsView的XAML,使用數(shù)據(jù)綁定表達(dá)式來來顯示所選故事的標(biāo)題:
點(diǎn)擊放大
出處:Scott Guthrie 博客中文版
責(zé)任編輯:bluehearts
上一頁 使用用戶控件實(shí)現(xiàn)主從表場景 [2] 下一頁 使用用戶控件實(shí)現(xiàn)主從表場景 [4]
◎進(jìn)入論壇RIA設(shè)計(jì)與應(yīng)用版塊參加討論
|