Silverlight 教程第五部分:用 ListBox 和 DataBinding 顯示列表數(shù)據(jù)
原文地址: Silverlight Tutorial Part 5: Using the ListBox and DataBinding to Display List Data 原文發(fā)表日期: Friday, February 22, 2008 5:51 AM
這是8個(gè)系列教程的第5部分,這個(gè)系列示范如何使用 Silverlight 2 的 Beta1 版本來創(chuàng)建一個(gè)簡單的 Digg 客戶端應(yīng)用。這些教程請(qǐng)依次閱讀,將有助于您理解 Silverlight 的一些核心編程概念。
用 ListBox 和 DataBinding 顯示我們的 Digg 故事
前面我們使用了 DataGrid 控件來顯示我們的 Digg 故事。當(dāng)我們想用多列的格式來顯示內(nèi)容時(shí),它很適合。然而對(duì)我們的 Digg 應(yīng)用程序而言,也許我們想稍微改變一下頁面的顯示方式,讓它看起來不太像網(wǎng)格,而更像一個(gè)列表。好消息是,這很容易實(shí)現(xiàn) - 并且我們不需要改變?nèi)魏纬绦虼a。
首先我們將 DataGrid 控件替換為 <ListBox> 控件。我們保持原有的控件名稱 ("StoriesList"):
重新運(yùn)行一下程序,搜索故事,ListBox 會(huì)顯示搜索結(jié)果如下:
你可能覺得奇怪 - 為什么每個(gè)條目都變成了 "DiggSample.DiggStory"? 這是因?yàn)槲覀儼?DiggStory 對(duì)象綁定給了 ListBox(而綁定的默認(rèn)行為會(huì)調(diào)用這些對(duì)象的 ToString() 方法)。如果我們想改用每個(gè) DiggStory 對(duì)象的 Title 屬性來顯示條目,可以設(shè)置 ListBox 的 DisplayMemberPath 屬性:
這樣做之后的效果如下:
如果要每次顯示不止一個(gè)值,或者定制每個(gè)條目的布局,我們可以覆蓋 ListBox 控件的 ItemTemplate,并提供一個(gè)自定義的 DataTemplate. 然后在這個(gè) DataTemplate 內(nèi),定制每個(gè) DiggStory 對(duì)象如何顯示。
出處:Scott Guthrie 博客中文版
責(zé)任編輯:bluehearts
上一頁 下一頁 ListBox和DataBinding顯示列表數(shù)據(jù) [2]
◎進(jìn)入論壇RIA設(shè)計(jì)與應(yīng)用版塊參加討論
|