武漢北大青鳥 > IT技術教程 > .NET技術教程 >

可切換視圖的DataTemplate

時間:2015-05-07來源:北大青鳥徐東校區
客戶的需求是這樣的:要求用Silverlight寫一個留言板,打開界面后,可以看到一個留言列表,每條留言只顯示標題、發言人和發言時間。每條留言有一個切換按鈕,可以顯示和隱藏留言的詳細信息。
 
   實現這個功能很簡單。用一個ListBox加上一個DataTemplate就搞定了。這里著重提示一句:DataTemplate就是“數據的外衣”,只有理解了DataTemplate才能明白WPF的精髓——數據驅動UI,也才能可能準確地使用MVVM模式。
 
下面讓我們看代碼。
 
   頁面的設計很簡單——Title和ListBox。Load按鈕用來加載模擬數據。模擬數據的類型是自定義類Message。
  1. <UserControl x:Class="SilverlightApplicationBBS.Page"

  2.    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

  3.    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

  4.    Width="600" Height="366">

  5.    <StackPanel x:Name="LayoutRoot" Background="LightBlue">

  6.        <!--Title-->

  7.        <StackPanel Orientation="Horizontal">

  8.            <TextBlock Text="Silverlight Mini BBS" FontSize="24" Margin="5"VerticalAlignment="Bottom"/>

  9.            <TextBlock Text="Powered by: 水之真諦" Width="200" VerticalAlignment="Bottom" Margin="10"/>

  10.            <Button Content="Load"  Height="23" Width="75"VerticalAlignment="Bottom" Margin="10" Click="LoadButton_Click" />

  11.        </StackPanel>

  12.        <!--Content-->

  13.        <ListBox x:Name="listBox" Margin="10" Height="300" />

  14.    </StackPanel>

  15. </UserControl>

自定義Message類:
  1.    public class Message

  2.    {

  3.        public string Title { getset; }

  4.        public string OpenedBy { getset; }

  5.        public string OpenTime { getset; }

  6.        public string Content { getset; }

  7.    }


責任編輯:admin

分享到:

作者: 武漢北大青鳥 原載: 武漢北大青鳥徐東校區 www.gaidft.icu
版權所有,轉載時必須以鏈接形式注明作者和原始出處及本聲明

027-87660036

開班信息

只為了方便您就學 徐東校區

武漢市洪山區友誼大道504號金馬凱旋家居北大青鳥徐東校區2樓(地鐵8號線徐東站D出口徐東平價旁)

全真項目實戰 入學簽就業協議

Copyright (c) 2006-2020 武漢宏鵬職業培訓學校 版權所有 All Rights Reserved.

在線咨詢