欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

WP7 Toolkit ExpanderView 控件 介紹 02

系統 1830 0

這里來實現一個ListBox里面點擊某項后 展示出它的選中項更多的數據

這時使用ExpanderView 來實現會非常簡單

WP7 Toolkit ExpanderView 控件 介紹 02_第1張圖片

?

首先寫實體類:

      
      
      
        public
      
      
      
      
        class
      
      
         CustomPizza : INotifyPropertyChanged 
        
{
private bool isExpanded;
public string Image { get ; set ; }
public string Name { get ; set ; }
public DateTime DateAdded { get ; set ; }
public IList < PizzaOption > Options { get ; set ; }
public bool HasNoOptions
{
get { return this .Options == null || this .Options.Count == 0 ; }
}
public bool IsExpanded
{
get { return this .isExpanded; }
set
{
if ( this .isExpanded != value)
{
this .isExpanded = value;
this .OnPropertyChanged( " IsExpanded " );
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged( string propertyName)
{
PropertyChangedEventHandler handler
= this .PropertyChanged;
if (handler != null )
{
handler(
this , new PropertyChangedEventArgs(propertyName));
}
}
}

public class PizzaOption
{
public string Name { get ; set ; }
}

創建Images文件夾并放入4張圖片

寫入數據

      
        public
      
      
         MainPage() 
        
{
List
< CustomPizza > customPizzas = new List < CustomPizza > ()
{
new CustomPizza()
{
Name
= " Custom Pizza 1 " ,
DateAdded
= new DateTime( 2010 , 7 , 8 ),
Image
= " Images/pizza1.png " ,
Options
= new List < PizzaOption >
{
new PizzaOption() { Name = " Ham " },
new PizzaOption() { Name = " Mushrooms " },
new PizzaOption() { Name = " Tomatoes " }
}
},
new CustomPizza()
{
Name
= " Custom Pizza 2 " ,
DateAdded
= new DateTime( 2011 , 2 , 10 ),
Image
= " Images/pizza2.png " ,
Options
= new List < PizzaOption >
{
new PizzaOption() { Name = " Ham " },
new PizzaOption() { Name = " Olives " },
new PizzaOption() { Name = " Mozzarella " }
}
},
new CustomPizza()
{
Name
= " Surprise Pizza " ,
Image
= null ,
DateAdded
= new DateTime( 2011 , 4 , 1 ),
Options
= null
},
new CustomPizza()
{
Name
= " Custom Pizza 3 " ,
Image
= " Images/pizza3.png " ,
DateAdded
= new DateTime( 2011 , 5 , 15 ),
Options
= new List < PizzaOption >
{
new PizzaOption() { Name = " Salami " },
new PizzaOption() { Name = " Mushrooms " },
new PizzaOption() { Name = " Onions " } }
},
new CustomPizza()
{
Name
= " Custom Pizza 4 " ,
Image
= " Images/pizza4.png " ,
DateAdded
= new DateTime( 2011 , 7 , 20 ),
Options
= new List < PizzaOption >
{
new PizzaOption() { Name = " Pepperoni " },
new PizzaOption() { Name = " Olives " },
new PizzaOption() { Name = " Mozzarella " }
}
},
};
// ...
}

?

下面寫前端頁面,及數據跟UI的綁定

前面頁面數據轉換器:(比如08/08/2011年,我們即可以自動轉換成文字"一個月以前")

      
        <
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        toolkit:RelativeTimeConverter 
      
      
        x:Key
      
      
        ="RelativeTimeConverter"
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    

頭部模板:

      
        <
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        DataTemplate 
      
      
        x:Key
      
      
        ="CustomHeaderTemplate"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Text
      
      
        ="
      
      
        {Binding Name}
      
      
        "
      
      
         FontSize
      
      
        ="
      
      
        {StaticResource PhoneFontSizeExtraLarge}
      
      
        "
      
      
         FontFamily
      
      
        ="
      
      
        {StaticResource PhoneFontFamilySemiLight}
      
      
        "
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        DataTemplate
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    

下拉擴展列表模板

      
        <
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        DataTemplate 
      
      
        x:Key
      
      
        ="CustomExpanderTemplate"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        StackPanel 
      
      
        Orientation
      
      
        ="Horizontal"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        Image 
      
      
        Source
      
      
        ="
      
      
        {Binding Image}
      
      
        "
      
      
         Stretch
      
      
        ="None"
      
      
        />
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Foreground
      
      
        ="
      
      
        {StaticResource PhoneSubtleBrush}
      
      
        "
      
      
           FontSize
      
      
        ="
      
      
        {StaticResource PhoneFontSizeNormal}
      
      
        "
      
      
         VerticalAlignment
      
      
        ="Center"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock.Text
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        Binding 
      
      
        Path
      
      
        ="DateAdded"
      
      
         Converter
      
      
        ="
      
      
        {StaticResource RelativeTimeConverter}
      
      
        "
      
      
         StringFormat
      
      
        ="Date added: {0}"
      
      
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        TextBlock.Text
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        TextBlock
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        StackPanel
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        DataTemplate
      
      
        >
      
    
      
      
      
      
      
        </
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    

每ListBox的Item 模板

      
        <
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        DataTemplate 
      
      
        x:Key
      
      
        ="CustomItemTemplate"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Text
      
      
        ="
      
      
        {Binding Name}
      
      
        "
      
      
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        DataTemplate
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    

有沒下拉列表時顯示的模板

      
        <
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        DataTemplate 
      
      
        x:Key
      
      
        ="CustomNonExpandableHeaderTemplate"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        StackPanel 
      
      
        Orientation
      
      
        ="Vertical"
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Text
      
      
        ="
      
      
        {Binding Name}
      
      
        "
      
      
         FontSize
      
      
        ="
      
      
        {StaticResource PhoneFontSizeExtraLarge}
      
      
        "
      
      
         FontFamily
      
      
        ="
      
      
        {StaticResource PhoneFontFamilySemiLight}
      
      
        "
      
      
        />
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Foreground
      
      
        ="
      
      
        {StaticResource PhoneSubtleBrush}
      
      
        "
      
      
         FontSize
      
      
        ="
      
      
        {StaticResource PhoneFontSizeNormal}
      
      
        "
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock.Text
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        Binding 
      
      
        Path
      
      
        ="DateAdded"
      
      
         Converter
      
      
        ="
      
      
        {StaticResource RelativeTimeConverter}
      
      
        "
      
      
         StringFormat
      
      
        ="Date added: {0}"
      
      
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        TextBlock.Text
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        TextBlock
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        TextBlock 
      
      
        Text
      
      
        ="The ingredients will be a surpise!"
      
      
          Foreground
      
      
        ="
      
      
        {StaticResource PhoneSubtleBrush}
      
      
        "
      
      
        FontSize
      
      
        ="
      
      
        {StaticResource PhoneFontSizeNormal}
      
      
        "
      
      
      
      
        />
      
      
      
    
      
      
      
        </
      
      
        StackPanel
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        DataTemplate
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        phone:PhoneApplicationPage.Resources
      
      
        >
      
      
      
    

這時添加一個ListBox

      
        <
      
      
        ListBox 
      
      
        Grid.Row
      
      
        ="0"
      
      
         x:Name
      
      
        ="listBox"
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        ListBox.ItemContainerStyle
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        Style 
      
      
        TargetType
      
      
        ="ListBoxItem"
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        Setter 
      
      
        Property
      
      
        ="HorizontalContentAlignment"
      
      
         Value
      
      
        ="Stretch"
      
      
        />
      
    
      
      
      
      
      
        </
      
      
        Style
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        ListBox.ItemContainerStyle
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        ListBox.ItemsPanel
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        ItemsPanelTemplate
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        StackPanel
      
      
        />
      
    
      
      
      
      
      
        </
      
      
        ItemsPanelTemplate
      
      
        >
      
    
      
      
      
      
      
        </
      
      
        ListBox.ItemsPanel
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        ListBox.ItemTemplate
      
      
        >
      
      
      
    
      
      
      
        <
      
      
        DataTemplate
      
      
        >
      
    
      
      
      
      
      
        <
      
      
        toolkit:ExpanderView 
      
      
        Header
      
      
        ="
      
      
        {Binding}
      
      
        "
      
      
           Expander
      
      
        ="
      
      
        {Binding}
      
      
        "
      
      
         ItemsSource
      
      
        ="
      
      
        {Binding Options}
      
      
        "
      
      
         NonExpandableHeader
      
      
        ="
      
      
        {Binding}
      
      
        "
      
      
        IsNonExpandable
      
      
        ="
      
      
        {Binding HasNoOptions}
      
      
        "
      
      
          IsExpanded
      
      
        ="
      
      
        {Binding IsExpanded, Mode=TwoWay}
      
      
        "
      
      
        HeaderTemplate
      
      
        ="
      
      
        {StaticResource CustomHeaderTemplate}
      
      
        "
      
      
         ExpanderTemplate
      
      
        ="
      
      
        {StaticResource CustomExpanderTemplate}
      
      
        "
      
      
        ItemTemplate
      
      
        ="
      
      
        {StaticResource CustomItemTemplate}
      
      
        "
      
      
        NonExpandableHeaderTemplate
      
      
        ="
      
      
        {StaticResource CustomNonExpandableHeaderTemplate}
      
      
        "
      
      
        />
      
    
      
      
      
      
      
        </
      
      
        DataTemplate
      
      
        >
      
      
      
    
      
      
      
        </
      
      
        ListBox.ItemTemplate
      
      
        >
      
    
      
      
      
      
      
        </
      
      
        ListBox
      
      
        >
      
      
      
    

最后設置ListBox的ItemSource : this .listBox.ItemsSource = customPizzas;

WP7 Toolkit ExpanderView 控件 介紹 02


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!?。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 五月天欧美激情午夜情 | 中文字幕日韩欧美 | 欧美精品播放 | 五月婷综合 | 国产在线观看免费 | 午夜精品一区二区三区免费视频 | 噜噜噜色网 | av网站在线看 | 免费福利视频在线观看 | 91久久精品一区二区三区 | 色婷婷久久综合中文久久一本 | 欧美一区二区三区视频 | 日本精品久久久久中文字幕2 | 日本高清午夜色wwwσ | 欧美久久xxxxxx影院 | 亚洲国产一区二区三区四区 | 日本精品在线观看 | 爱婷婷网站在线观看 | 色客成人网| 久久黄色大片 | 波多野吉衣一区二区三区四区 | 欧美韩国日本一区 | 国产精品成人在线 | 精品国产一区二区国模嫣然 | 91色在线观看 | 亚洲一区二区三区免费观看 | 欧美一区二区三区爽大粗免费 | 狠狠色狠狠色 | 草比网站| 色屁屁www影院免费观看软件 | 丝袜诱惑中文字幕 | 欧美精选在线 | 天天摸天天操免费播放小视频 | 亚洲成a人片在线观看中文 在线a人片免费观看国产 | 亚洲激情小视频 | 精品国产18久久久久久二百 | 日韩一级一欧美一级国产 | 久久精品一区二区免费播放 | 亚洲草原天堂 | 成人免费毛片片v | 日韩中文一区二区三区 |