成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解Silverlight 4中的數據綁定

開發 前端 后端
本文將為大家講述的是Silverlight 4中的數據綁定的有關內容,希望能對大家有所幫助。

本文將為大家介紹Silverlight 4中的數據綁定,希望能對大家有所幫助。同時51CTO向您推薦《走向銀光 —— 一步一步學Silverlight》專題。

DependencyObject Binding

在Silverlight之前的版本中,其支持的元素綁定只是允許綁定繼承自FrameworkElement類下元素,但是比如一些形變比如Transformations就不能綁定了。現在數據綁定也可以綁定繼承自DependencyObject下的任何元素。

 
  1.  <Grid x:Name="LayoutRoot"   
  2.  Background="White">    
  3. <StackPanel Width="400" Margin="0,22,0,0">    
  4.  <StackPanel.RenderTransform>    
  5.    <CompositeTransform    
  6.   ScaleX="{Binding Value,ElementName=stretcher}"   
  7.   ScaleY="{Binding Value,ElementName=stretcher}" />    
  8.  </StackPanel.RenderTransform>    
  9.   <Button Content="Button"/>    
  10.  <Button Content="Button"/>    
  11.  <Button Content="Button"/>    
  12.  <Button Content="Button"/>    
  13. <Button Content="Button"/>    
  14.   </StackPanel>    
  15.  <Slider Minimum=".5"   
  16.    Maximum="4"   
  17.     x:Name="stretcher"   
  18.    Value="1" VerticalAlignment="Top" />    
  19.  </Grid>  

String Formatting

新版的Silverlight4中新增加了格式化字符串的能力。在這之前如果要做一個數據格式化不得不使用一個Converter來格式化字符串。現在可以使用擴展標記StringFormat來做一些比如日期、貨幣等的格式化。

在VS2010中也提供了可視化的支持。

 
  1. <Grid x:Name="LayoutRoot" Background="White">    
  2. <TextBox Text="{Binding ReleaseDate, StringFormat='yyyy年MM月dd日',     
  3.  Mode=TwoWay}"     
  4.   Margin="0,30,0,0"    
  5.    Height="26"    
  6.     VerticalAlignment="Top" d:LayoutOverrides="Height" />    
  7. <TextBlock Text="{Binding Price, StringFormat='c'}"    
  8.  Margin="0,0,0,0"    
  9.   Height="26" VerticalAlignment="Top" />    
  10. </Grid>  

Null and Fallback Values

在某些特殊的情況下,數據有可能加載失敗。數據綁定中有新增加了兩個寬展標記TargetNullValue、FallbackValue,TargetNullValue這個標記表示了當綁定值是null的時候顯示的值。FallbackValue則是在數據未綁定時顯示的值。

  1. <Grid x:Name="LayoutRoot" Background="White">    
  2. <TextBlock Text="{Binding Developer,    
  3.   TargetNullValue='(暫無)'}"     
  4.        Height="26" Margin="0,100,0,0"    
  5.       VerticalAlignment="Top" d:LayoutOverrides="Height" />    
  6.   <TextBlock Text="{Binding Publisher,     
  7.   FallbackValue='(暫無)'}" Height="26"    
  8.      VerticalAlignment="Top" Margin="0,33,0,0" />    
  9. </Grid>  
 CollectionViewSource Changes
對于在GataGrid中做分組管理,現在的CollectionViewSource支持數據到GroupDescriptions的綁定,這樣可以更加輕松的在XAML做分組。
  1. <UserControl.Resources>    
  2. <CollectionViewSource x:Name="dataSource"    
  3.  Source="{Binding}">    
  4.    <CollectionViewSource.GroupDescriptions>    
  5.      <PropertyGroupDescription PropertyName="Gender" />    
  6.     <PropertyGroupDescription PropertyName="AgeGroup" />    
  7.   </CollectionViewSource.GroupDescriptions>    
  8.   <CollectionViewSource.SortDescriptions>    
  9.     <compMod:SortDescription PropertyName="AgeGroup" Direction="Ascending"/>                    
  10.     </CollectionViewSource.SortDescriptions>    
  11.    </CollectionViewSource>    
  12.  </UserControl.Resources>    
  13. <Grid x:Name="LayoutRoot" Background="White">    
  14.   <sdk:DataGrid ItemsSource="{Binding Source={StaticResource dataSource}}" />    
  15.  </Grid>  
  1. public List<Person> GetPeople()          
  2. {            List<Person> peeps = new List<Person>();  
  3.  peeps.Add(new Person() { FirstName = "Wang", LastName = "Zhe", Gender = "M", AgeGroup = "Adult" });  
  4.  peeps.Add(new Person() { FirstName = "nasa", LastName = "wang", Gender = "M", AgeGroup = "Adult" });  
  5.  peeps.Add(new Person() { FirstName = "summer", LastName = "liang", Gender = "F", AgeGroup = "Kid" });  
  6.  peeps.Add(new Person() { FirstName = "liang", LastName = "jing", Gender = "F", AgeGroup = "Kid" });  
  7.     return peeps;  
  8.         } 

Error Propogation

Silverlight的數據驗證機制,在這里得到了很多的擴充,提供了IDataErrorInfoINotifyDataErrorInfo從而能得到更多的信息。

原文標題:Silverlight 4 中數據綁定發生的變化

鏈接:http://www.cnblogs.com/nasa/archive/2010/04/19/Data_Binding_Changes_in_Silverlight_4.html

 

責任編輯:彭凡 來源: 博客園
相關推薦

2009-12-30 09:38:37

Silverlight

2009-02-20 08:54:20

DownloaderSilverlight對象

2009-12-30 09:45:52

Silverlight

2010-06-02 09:25:29

Silverlight

2009-11-26 13:12:16

Silverlight

2009-12-31 11:10:01

2016-10-11 20:33:17

JavaScriptThisWeb

2009-03-16 10:00:01

文件同步LivemeshSilverlight

2009-12-30 10:15:57

Silverlight

2009-12-30 15:32:03

Silverlight

2009-11-18 11:33:23

Silverlight

2009-12-31 16:56:40

Silverlight

2009-12-31 10:07:08

Silverlight

2009-09-07 15:25:24

MySQL數據庫互操作Silverlight

2012-05-28 10:34:50

MVVM 數據綁定

2009-12-30 09:55:51

Silverlight

2009-12-30 14:36:29

Silverlight

2009-12-31 17:31:23

Silverlight

2009-07-27 09:46:28

Silverlight

2009-04-21 13:14:33

SilverlightWPF擴展
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲成人久久久 | 国内久久 | a视频在线观看 | 久久99精品视频 | 成人欧美一区二区三区黑人孕妇 | 三级在线免费 | 欧美国产日韩在线观看 | 国产成人精品网站 | 久久久精品国产 | 久久久久久电影 | 国产成人精品久久二区二区 | 日韩成人av在线 | 日韩欧美国产不卡 | 综合色在线 | 国产精品99久久久久久动医院 | 欧美高清一级片 | 国产美女高潮 | 成人福利在线视频 | 999久久久久久久久 国产欧美在线观看 | 日韩精品久久一区 | 国产精品自产拍在线观看蜜 | 国产精品久久久久久一区二区三区 | 国产精品精品视频一区二区三区 | 精品亚洲一区二区三区 | 亚洲一区在线日韩在线深爱 | 免费一区 | 久久国产精品色av免费观看 | 99re视频在线观看 | 日本成人久久 | 久久福利电影 | 欧美成人一区二区 | 午夜一区二区三区 | 欧美在线一区二区三区 | 久久最新 | 九九亚洲 | www.色婷婷| 日韩在线视频一区 | 一区二区福利视频 | 中文字幕 在线观看 | 日日夜夜天天综合 | 91久久精品国产 |