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

Silverlight 2數據驗證功能實現方法介紹

開發 開發工具
Silverlight 2數據驗證是一項比較新的功能。我們可以通過一些相關代碼示例,來體驗其帶來的功能體驗。并在第一時間內掌握這一知識。

Silverlight從出現至今,已經推出了許多版本。每一個新版本的出現都會為程序員們帶來一些新的功能體驗。比如,Silverlight 2數據驗證就是一項比較新的支持功能。在Silverlight 2中,當我們把數據綁定到某個UI控件的時候,該數據所具有的有效性規則也自動被綁定到了該UI控件上。#t#

比如某個數據字段被設置為整數型,當我們用非整數型數據對該字段進行更新的時候就會發生錯誤。我們就可以利用這個規則在UI中對輸入數據進行驗證。要做到這點,我們只要設置兩個XAML屬性,并在所定義的事件中實現我們所期望的UI行為就可以了。

比如如下的XAML代碼定義了一組控件,用戶通過TextBox對數據進行更新體驗Silverlight 2數據驗證的功能:

 

  1. view plaincopy to clipboardprint?  
  2. < StackPanel x:Name="dataForm">   
  3. < TextBlock Text="FirstName" Width="125" 
    FontSize="12" />   
  4. < TextBox x:Name="FirstNameTextBox" 
    IsReadOnly="False" Width="150" 
    Text="{Binding FirstName, Mode=TwoWay, 
    NotifyOnValidationError=true, 
    ValidatesOnExceptions=true}"
     
    BindingValidationError="FirstNameTextBox_
    BindingValidationError"
    />   
  5. < /StackPanel>   
  6. < StackPanel x:Name="dataForm"> 
  7. < TextBlock Text="FirstName" Width="125" 
    FontSize="12" /> 
  8. < TextBox x:Name="FirstNameTextBox" 
    IsReadOnly="False" Width="150" 
    Text="{Binding FirstName, Mode=TwoWay, 
    NotifyOnValidationError=true, Validates
    OnExceptions=true}"
     BindingValidationError=
    "FirstNameTextBox_BindingValidationError"/> 
  9. < /StackPanel>  

 

當NotifyOnValidationError和ValidatesOnExceptions這兩個屬性都設置為true的時候,Silverlight就會在對輸入數據驗證所綁定的規則發生錯誤的時候觸發BindingValidationError事件,這樣我們就會在Silverlight 2數據驗證中發生錯誤時得到通知。

接下來我們要做的就是實現事件觸發時的行為,也就是我們期望的UI行為。如:

 

  1. view plaincopy to clipboardprint?  
  2. private void FirstNameTextBox_Binding
    ValidationError(object sender, 
    ValidationErrorEventArgs e)   
  3. {   
  4. if (e.Action == ValidationErrorEventAction.Added)   
  5. {   
  6. ((Control)e.OriginalSource).Background = 
    new SolidColorBrush(Colors.Red);   
  7. this.Dispatcher.BeginInvoke(()=>HtmlPage.
    Window.Alert("The input format is invalid"));   
  8. }   
  9. if (e.Action == ValidationErrorEventAction.Removed)   
  10. {   
  11. ((Control)e.OriginalSource).Background = 
    new SolidColorBrush(Colors.White);   
  12. }   
  13. }   
  14. private void FirstNameTextBox_BindingValidation
    Error(object sender, ValidationErrorEventArgs e)  
  15. {  
  16. if (e.Action == ValidationErrorEventAction.Added)  
  17. {  
  18. ((Control)e.OriginalSource).Background = 
    new SolidColorBrush(Colors.Red);  
  19. this.Dispatcher.BeginInvoke(()=>HtmlPage.
    Window.Alert("The input format is invalid"));  
  20. }  
  21. if (e.Action == ValidationErrorEventAction.Removed)  
  22. {  
  23. ((Control)e.OriginalSource).Background = 
    new SolidColorBrush(Colors.White);  
  24. }  
  25. }  

 

在上面這段Silverlight 2數據驗證代碼中,當錯誤發生時,控件(這里是TextBox)的背景色就會變成紅色,并利用HTML頁面的警告窗口給用戶提示信息。而當錯誤被更正時,空間就會還原到默認的白色。

責任編輯:曹凱 來源: CSDN
相關推薦

2009-12-30 16:19:49

Silverlight

2009-12-30 17:44:22

Silverlight

2009-12-30 15:08:04

Silverlight

2009-12-30 14:44:04

Silverlight

2009-12-31 16:18:44

Silverlight

2009-12-29 18:02:26

SilverLight

2009-12-30 13:59:58

Silverlight

2009-12-30 14:28:06

Silverlight

2009-12-31 10:51:55

Silverlight

2009-12-31 15:05:00

Silverlight

2009-12-31 14:12:40

Silverlight

2010-01-04 17:42:50

SilverLight

2009-12-30 15:42:08

Silverlight

2009-12-29 18:34:21

Silverlight

2009-12-30 16:10:10

Silverlight

2009-12-30 16:43:47

Silverlight

2010-01-04 16:50:04

Silverlight

2009-12-29 18:09:00

Silverlight

2009-12-31 14:48:28

Silverlight

2009-12-30 15:53:28

Silverlight
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线国产视频 | 国产美女精品 | www.操com| 欧美在线看片 | av在线影院 | 久久精品一级 | 久久精品这里精品 | 毛片免费看的 | www.欧美.com | 欧美一区二区三区视频在线播放 | 欧美亚洲视频 | 91精品久久久久久久久久入口 | 最新av在线网址 | 国产精品自产拍在线观看蜜 | 久久久久久久一级 | 国产不卡一 | 黄视频在线网站 | 午夜看片网站 | 免费看黄色小视频 | 亚洲精品久久久一区二区三区 | 蜜桃视频在线观看免费视频网站www | 精品免费 | 日韩精品一区二区三区在线播放 | 国产成人网 | 粉嫩国产精品一区二区在线观看 | 国产视频久| 国产超碰人人爽人人做人人爱 | 日日夜夜精品视频 | 毛片网站在线观看视频 | 91精品国产综合久久久久久蜜臀 | 日韩中文字幕在线视频观看 | 亚洲精品二区 | 国产在线精品一区二区三区 | 精品国产精品一区二区夜夜嗨 | 一区在线播放 | 欧美xxxx在线 | 国产福利小视频 | 欧美日韩一区二区在线 | aaa一区| 日韩精品视频在线播放 | 免费视频99|