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

Expression Blend 3新增功能Make Into Control介紹

開發(fā) 后端
與Silverlight 3一起發(fā)布的Expression Blend 3是微軟推出的一款強大的開發(fā)工具,此次在3版本中增添了很多新功能。本文介紹其中的繪制圖形功能:Make Into Control。

前不久,微軟又推出其"Flash殺手"的又一個新版本Silverlight 3。值得注意的是,不僅Silverlight 3中新增添了不少功能,而且Expression Blend 3較之于其前的版本也大大加強,一個又一個極酷的支持加入到其中。

由于目前的Silverlihgt尚處于快速發(fā)展階段,而且目前Visual Studio還沒有提供對于XAML標記語言的可視化支持,所以,Expression Blend的可視化編程支持幾乎是我們必須掌握的。

在本文中,我僅想介紹Expression Blend 3的一個新增功能-Make Into Control。借助于這項支持,你可以隨心所欲繪制任何幾何圖形,然后把它轉換成一個按鈕,滑動條或者是一個下拉列表框控件。如果你也是的新手,那么本文也許正是你需要掌握的技巧之一。

【注意】本文操作試驗的前提是,你必須事先安裝Silverlight 3 Tools for Visual Studio SP1以及Microsoft Expression Blend 3(當然也可以使用試用版本)。

案例分析

首先,請啟動Visual Studio 2008。然后,選擇"文件"-"新建"-"項目"。在隨后的"新建項目"對話框中,選擇"Silverlight Application"模板,并命名項目名稱為S3MakeIntoControl。請參考圖1。

S3MakeIntoControl

圖1  創(chuàng)建Silverlight應用程序對話框

單擊"確定"按鈕,隨后出現(xiàn)一個對話框,意思是選擇Silverlight工程的宿主站點。請選擇默認設置。

然后,導航到Silverlight工程,在文件MainPage.xaml上單擊右鍵并選擇"Open in Expression Blend..."。

于是,系統(tǒng)自動打開另一個軟件Microsoft Expression Blend 3,并且在你面前呈現(xiàn)一個空的XAML頁面。

注意到,在此頁面的左邊是Expression Blend程序的工具欄。請選擇其中的Pencil圖標(請參考圖2)。

選擇其中的Pencil圖標

圖2  從Expression Blend工具欄中選擇鉛筆圖標

現(xiàn)在,你可以在MainPage.xaml頁面中進行任意繪制。本例中,我繪制了一個丑陋的五角星形狀。然后,選擇上面的五角星形狀,就可以把它轉換成一個Silverlight控件。

選擇五角星形狀后,在其上單擊右鍵并選擇"Make Into Control"選項(請參考圖3)。

Make Into Control

圖3  選擇五角星后擊右鍵選擇"Make Into Control"選項

隨后彈出一個確定要轉換成指定控件的對話框(請參考圖4)。

轉換成指定控件的對話框

圖4  確定控件類型對話框

 為了簡化起見,在上圖對話框中選擇"Button"控件類型,并輸入鍵名為pentagonButton,***單擊"OK"按鈕退出對話框?,F(xiàn)在,我們便有了一個Button控件了。感覺如何?

不忙,讓我們繼續(xù)進行一番修改。右單擊剛剛創(chuàng)建的pentagonButton按鈕,從隨后的彈出菜單中選擇"Edit Template"-"Edit Current",如圖5所示。

選擇編輯新創(chuàng)建控件的模板

圖5  選擇編輯新創(chuàng)建控件的模板

經(jīng)上面的操作后,我們便可以通過States窗口(作為一個選項卡,與"Projects"靠在一起)來訪問VisualStateManager了。

現(xiàn)在,單擊"States"選項卡,然后在其中單擊MouseOver狀態(tài)。這將觸發(fā)MouseOver事件的狀態(tài)錄制動作,如圖6所示。

觸發(fā)新建控件的MouseOver事件的狀態(tài)錄制動作

圖6  觸發(fā)新建控件的MouseOver事件的狀態(tài)錄制動作

此時,打開右邊的"Properties"(屬性)選項卡,設置按鈕控件的填充色為另一個顏色,如圖7所示。

在新建控件的MouseOver事件錄制狀態(tài)填充新的顏色

圖7  在新建控件的MouseOver事件錄制狀態(tài)填充新的顏色

現(xiàn)在,停止錄制操作,保存剛才的工作(File-Save)。

此時轉到xaml文件的標記狀態(tài)下觀察,你會發(fā)現(xiàn)有如下內容:

  1. < UserControl.Resources> 
  2. < Style x:Key="pentagonButton" TargetType="Button"> 
  3. < Setter Property="Template"> 
  4. < Setter.Value> 
  5. < ControlTemplate TargetType="Button"> 
  6. < Grid> 
  7. < VisualStateManager.VisualStateGroups> 
  8. < VisualStateGroup x:Name="FocusStates"> 
  9. < VisualState x:Name="Focused"/> 
  10. < VisualState x:Name="Unfocused"/> 
  11. < /VisualStateGroup> 
  12. < VisualStateGroup x:Name="CommonStates"> 
  13. < VisualState x:Name="Normal"/> 
  14. < VisualState x:Name="MouseOver"> 
  15. < Storyboard> 
  16. < ColorAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="path" Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[1].(GradientStop.Color)"> 
  17. < EasingColorKeyFrame KeyTime="00:00:00" Value="#FFF200FF"/> 
  18. < /ColorAnimationUsingKeyFrames> 
  19. < /Storyboard> 
  20. < /VisualState> 
  21. < VisualState x:Name="Pressed"/> 
  22. < VisualState x:Name="Disabled"/> 
  23. < /VisualStateGroup> 
  24. < /VisualStateManager.VisualStateGroups> 
  25. < Path x:Name="path" Stretch="Fill" Stroke="Black" UseLayoutRounding="False" Data="M73.611115,181.94444 C86.962151,170.29263 84.722221,180.84279 84.722221,154.16667 C84.722221,138.78079 86.111115,123.42919 86.111115,108.33334 C86.111115,86.345619 87.5,65.706612 87.5,44.444443 C110.16323,44.444443 126.76094,82.515137 130.55556,116.66666 C133.69991,144.96585 144.44444,166.29266 144.44444,197.22223 C121.78442,197.22223 102.99593,172.35312 81.944443,159.72223 C67.342331,150.96095 59.193172,141.79919 55.555557,123.61111 C54.629631,123.61111 53.703705,123.61111 52.777779,123.61111 C54.022728,116.14142 155.51205,39.511379 137.5,105.55556 C127.33724,142.81902 121.06282,167.95105 77.777779,183.33333"> 
  26. < Path.Fill> 
  27. < RadialGradientBrush GradientOrigin="0.577,0.504"> 
  28. < GradientStop Color="Black" Offset="0"/> 
  29. < GradientStop Color="#FF01FF01" Offset="1"/> 
  30. < /RadialGradientBrush> 
  31. < /Path.Fill> 
  32. < /Path> 
  33. < ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> 
  34. < /Grid> 
  35. < /ControlTemplate> 
  36. < /Setter.Value> 
  37. < /Setter> 
  38. < /Style> 
  39. < /UserControl.Resources> 
  40. < Grid x:Name="LayoutRoot"> 
  41. < Button Height="153.778" HorizontalAlignment="Left" Margin="52.778,44.444,0,0" Style="{StaticResource pentagonButton}" VerticalAlignment="Top" Width="92.666" Click="Button_Click"/> 

為了觀察試驗效果明顯起見,在頁面MainPage.xaml的下部添加一個TextBlock控件,并命名為txtMessage。

接下來,我們想轉入到新創(chuàng)建的pentagonButton按鈕控件的Click事件處理器函數(shù)中。為此,只需要雙擊如圖8所示的事件名Click的右側。

圖8  待觸發(fā)pentagonButton按鈕控件的Click事件處理器

Blend即打開了后臺代碼編輯頁面MainPage.xaml.cs。這種代碼編輯功能也是Blend 3.0新增添的,而且支持語法智能感知提示,相當不錯。在Click事件處理器函數(shù)代碼中如下內容:

  1. private void Button_Click(object sender, System.Windows.RoutedEventArgs e)  
  2. {  
  3. txbMessage.Text="Hello world!";  
  4. }  

現(xiàn)在,請導航回到Visual Studio中,系統(tǒng)會提示你重新加載剛才的XAML文件。

***,請選擇"生成"-"重新生成解決方案"。生成完畢后,在宿主Web工程的S3MakeIntoControlTestPage.aspx文件上單擊右鍵并選擇"在瀏覽器中查看"。

現(xiàn)在,你可以欣賞上面的杰作了-你會觀察到如圖9所示的界面。

圖9  應用示例初始界面

此時,移動你手中的鼠標到五角星上(不要移動內部的白色部分),按鈕的顏色將變成前面設置的另一種形式(我們使用了漸變色)。而當單擊此按鈕時,下面的提示行中也顯示提示信息"Hello world!"(見圖10)。

圖10  單擊五角星按鈕出現(xiàn)相應的信息提示

小結

Expression Blend 3這個新版本中的確增添了不少強大的功能,本文介紹的僅是"冰山一角"。如今,借助于本文介紹的這個Make Into Control特征,你可以輕松實現(xiàn)把自己喜歡的形狀轉換成一個定制控件。這項功能極有趣也非常實用。

【編輯推薦】

  1. 微軟Expression Web3搶先試用報告
  2. Expression 3開發(fā)工具試用版開放下載
  3. Expression Blend 3新工具:用SketchFlow來設計原型
  4. SketchFlow:***款真正意義上的原型設計工具
  5. 微軟發(fā)布Silverlight 3正式版 新增50多項功能
責任編輯:yangsai 來源: IT168
相關推薦

2009-07-14 11:03:07

Expression SketchFlowSilverlight

2009-07-14 10:55:26

Expression SketchFlow

2012-04-25 09:52:05

Expression

2012-04-28 14:31:51

Expression

2012-04-10 10:02:06

春Phone沙龍Windows Pho營銷

2009-07-10 08:29:50

Silverlight

2022-11-27 23:37:34

Go模式Workspaces

2010-12-31 14:30:35

PowerShell

2010-12-23 15:26:00

Exchange Se

2013-11-01 14:08:11

2009-07-24 17:13:25

Expression

2010-12-23 14:21:50

生物識別

2013-10-16 09:26:02

OpenStack HOpenStack云網(wǎng)絡

2010-06-03 17:22:27

2009-09-27 10:03:53

Silverlight

2022-05-11 09:50:02

GitLinux

2014-03-24 10:44:49

Windows AzuWindows Azu

2009-07-16 16:08:30

WebWork Act

2013-06-28 15:23:13

好桌道

2009-05-08 08:40:37

AndroidGoogle移動OS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜视频精品 | 久久精品国产99国产精品 | 亚洲成人精品一区 | 久久精彩视频 | 国产91在线播放 | 亚洲国产一区在线 | 日韩精品一区二区三区视频播放 | 日本亚洲精品成人欧美一区 | 国产欧美在线播放 | 一级高清免费毛片 | 秋霞国产 | 欧美亚洲国产一区二区三区 | 国产高清在线精品一区二区三区 | 一区二区三区免费看 | 国产操操操 | 日韩国产欧美视频 | 天堂色区 | 麻豆国产一区二区三区四区 | 欧美精品一区二区三区蜜臀 | 一区二区三区在线电影 | 91在线看| .国产精品成人自产拍在线观看6 | 毛片在线视频 | 99免费视频 | 欧美日韩在线观看一区 | 一区二区三区在线看 | 久久久欧洲 | 九九亚洲| 可以看黄的视频 | 午夜视频免费在线观看 | 密室大逃脱第六季大神版在线观看 | 在线中文视频 | 91精品国产91| 性高湖久久久久久久久 | 九九热这里 | 日本免费一区二区三区四区 | 成人免费淫片aa视频免费 | 中文字幕亚洲精品在线观看 | 精品一二区 | 国产一级片91 | 玖玖精品视频 |