自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WPF布局相關(guān)設(shè)計(jì)方法

開(kāi)發(fā) 開(kāi)發(fā)工具
我們?cè)谶@篇文章中,用一個(gè)相關(guān)的示例來(lái)為大家詳細(xì)介紹一下有關(guān)WPF布局相關(guān)概念。通過(guò)這篇文章的介紹,相信大家可以初步掌握這一知識(shí)。

WPF布局在實(shí)際使用中是非常常用的一個(gè)操作。對(duì)于初學(xué)者來(lái)說(shuō),要從日常的開(kāi)發(fā)實(shí)踐中去慢慢體會(huì)這一技巧的操作,才能真正掌握布局方法。#t#

這里主要使用WPF和C#編寫(xiě)一個(gè)簡(jiǎn)單的小游戲(暫命名XMarket),意在通過(guò)該實(shí)例進(jìn)一步學(xué)習(xí)和體驗(yàn)WPF,也歡迎廣大同仁拍磚交流。言歸正傳,在編寫(xiě)一個(gè)軟件前首先要思考軟件的結(jié)構(gòu)與布局,圖片放在哪,按鈕放在哪,都要先設(shè)計(jì)一下。當(dāng)然本實(shí)例也只是簡(jiǎn)單布局。

我們通過(guò)學(xué)習(xí),大概了解到本實(shí)例結(jié)構(gòu)為上下WPF布局:

1. 首先,是背景圖片,不用多說(shuō)就是為了好看,簡(jiǎn)單的一個(gè)Image就可以實(shí)現(xiàn)了。

 

  1. < Image Source="image/
    backimage.jpg"
    >
  2. < /Image> 

2. 在軟件最上方的四個(gè)圖標(biāo)就是功能菜單,點(diǎn)擊它們就會(huì)有相應(yīng)的菜單顯示在下面。這四個(gè)圖標(biāo)也是由Image構(gòu)成,但是需要給它們附加一些事件,以達(dá)到想要的效果。后續(xù)文章中將介紹它們的功能。

將圖標(biāo)放在Canvas中,通過(guò)Canvas.Left和Canvas.Top來(lái)調(diào)整圖標(biāo)位置,Width和Height調(diào)整圖標(biāo)大小,Tag標(biāo)記一下圖標(biāo)內(nèi)容,Cursor設(shè)為Hand當(dāng)鼠標(biāo)放到圖標(biāo)上時(shí)表現(xiàn)為可以點(diǎn)擊狀態(tài)。

 

  1. < Canvas>   
  2. < Image Source="image/home.png" 
  3. Width="110" Height="110" Tag="My Home"   
  4. Canvas.Left="30" Canvas.Top="20" 
  5. Cursor="Hand">< /Image>   
  6. < Image Source="image/market.png" 
  7. Width="125" Height="125" Tag="My Shop" 
  8. Canvas.Left="150" Canvas.Top="13" 
  9. Cursor="Hand">< /Image>   
  10. < Image Source="image/new.png" 
  11. Width="125" Height="125" Tag="Upgrade Shop"   
  12. Canvas.Left="275" Canvas.Top="13" 
  13. Cursor="Hand">< /Image>   
  14.  
  15. < Image Source="image/bank.png" 
  16. Width="110" Height="110" Tag="Bank"   
  17. Canvas.Left="395" Canvas.Top="19" 
  18. Cursor="Hand">< /Image>   
  19. < /Canvas> 

3. 由于WPF布局的Image好像沒(méi)有HTML <img> 的Title功能,所以如果顯示圖片標(biāo)簽,初步想用一個(gè)可移動(dòng)的Textblock代替,所以在上面的Canvas中再加上一個(gè)Textblock。外加一個(gè)Border可以增加一些效果,Visibility默認(rèn)要設(shè)為不可見(jiàn)。

 

  1. < Border Name="imageTitleBorder" 
  2. CornerRadius="5"   
  3. Background="AntiqueWhite" 
  4. Visibility="Collapsed">   
  5. < TextBlock Name="imageTitle"> 
  6. </TextBlock>   
  7. < /Border> 

 

4. 下方菜單處,還是以Grid來(lái)布局內(nèi)容,Grid中的組件將由C#自動(dòng)生成。將該Grid放入ScrollViewer中方便顯示多行內(nèi)容,同時(shí)ScrollViewer設(shè)為垂直滑動(dòng)。

 

  1. < Canvas Name="queryCanvas" 
  2. Visibility="Collapsed">   
  3. < Border Name="queryBorder" 
  4. BorderThickness="7" CornerRadius="9"   
  5. Width="920" Height="440" 
  6. Canvas.Left="40" Canvas.Top="160">   
  7. < ScrollViewer Name=
    "queryScrollViewer"   
  8. ScrollViewer.VerticalScrollBar
    Visibility
    ="Visible">   
  9. < Grid Name="queryGrid"> 
  10. < /Grid>   
  11. < /ScrollViewer >   
  12. < /Border>   
  13. < /Canvas> 

 

5. ***將WPF布局代碼整合起來(lái)如下,在Window中做了一些軟件尺寸設(shè)置Height、Width、ResizeMode、WindowStartupLocation,以及軟件的Icon。

 

  1. <Window x:Class="XMarket.Window1"   
  2. xmlns="http://schemas.microsoft.com
    /winfx/2006/xaml/presentation"
       
  3. xmlns:x="http://schemas.microsoft.
    com/winfx/2006/xaml"
       
  4. Title="XMarket" Height="652" 
    Width="1005" WindowStartupLocation=
    "CenterScreen"   
  5. ResizeMode="NoResize" Icon="
    /XMarket;component/image/home.png"
    >   
  6. <Grid>   
  7. <Image Source="image/backimage.jpg">
    </Image>   
  8. <Canvas>   
  9. <Image Source="image/home.png" 
    Width="110" Height="110" Tag="My Home"   
  10. Canvas.Left="30" Canvas.Top="20" 
    Cursor="Hand"></Image><Image 
    Source="image/market.png" 
    Width="125" Height="125" Tag="My Shop"   
  11. Canvas.Left="150" Canvas.Top="13" 
    Cursor="Hand"></Image>   
  12. <Image Source="image/new.png" 
    Width="125" Height="125" Tag="Upgrade Shop"   
  13. Canvas.Left="275" Canvas.Top="13" 
    Cursor="Hand"></Image>   
  14. <Image Source="image/bank.png" 
    Width="110" Height="110" Tag="Bank"   
  15. Canvas.Left="395" Canvas.Top="19" 
    Cursor="Hand"></Image>   
  16. <Border Name="imageTitleBorder" 
    CornerRadius="5"   
  17. Background="AntiqueWhite" 
    Visibility="Collapsed">   
  18. <TextBlock Name="imageTitle"></TextBlock>   
  19. </Border>   
  20. </Canvas>   
  21. <Canvas Name="queryCanvas" 
    Visibility="Collapsed">   
  22. <Border Name="queryBorder" 
    BorderThickness="7" CornerRadius="9"   
  23. Width="920" Height="440" 
    Canvas.Left="40" Canvas.Top="160">   
  24. <ScrollViewer Name="queryScrollViewer"   
  25. ScrollViewer.VerticalScrollBar
    Visibility
    ="Visible">   
  26. <Grid Name="queryGrid"></Grid>   
  27. </ScrollViewer >   
  28. </Border>   
  29. </Canvas>   
  30. </Grid>   
  31. </Window> 

希望這篇文章介紹的WPF布局相關(guān)內(nèi)容可以為大家?guī)?lái)一些幫助。

責(zé)任編輯:曹凱 來(lái)源: ddvip.com
相關(guān)推薦

2009-12-28 17:48:01

WPF界面布局

2009-12-23 18:16:35

WPF布局控件

2009-12-29 09:54:27

WPF文字布局

2009-12-29 10:11:56

WPF布局屬性

2009-12-28 16:00:36

WPF樣式繼承

2009-12-24 13:31:25

WPF UI設(shè)計(jì)

2009-12-25 18:06:11

WPF刷新界面

2009-12-28 13:47:35

WPF對(duì)話(huà)框

2009-12-24 15:22:10

WPF繼承自定義窗口

2009-12-29 13:29:28

WPF Depende

2009-12-28 16:45:31

WPF窗體

2009-12-23 15:27:34

WPF圖形系統(tǒng)

2009-12-28 15:18:29

WPF控件模型

2009-12-28 15:01:39

WPF樹(shù)應(yīng)用

2009-12-25 11:23:43

WPF命令模型

2009-12-28 16:20:50

WPF內(nèi)嵌樣式

2009-12-23 17:18:45

WPF Attache

2009-12-25 18:12:43

WPF裝飾器

2009-12-29 10:22:34

WPF附加屬性

2009-12-28 15:08:12

WPF字體
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)