收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 7642|回复: 0

[Silverlight] Blend基础-布局控件(2)

[复制链接]
发表于 2009-11-4 14:13:32 | 显示全部楼层 |阅读模式
布局
--------------------------------------------------------------------------------

什么是布局?
  • Panels控件(其实就是容器控件)
  • 对内部的子控件提供了自动布局功能
  • 可以在容器控件内继续添加容器控件(一个复杂的界面往往是多种容器控件嵌套而组成的)
  • 一些界面器控件也是嵌套了容器控件而组成的(比如ListBox就嵌套了StackPanel控件)
  • 你也可以自己来制作一些容器控件

一些常见的布局控件
  • Canvas 最原始的容器控件,对子控件无自动布局功能。
  • StackPanel 能将子元素排列成一行(可沿水平或者垂直方向)
  • WarpPanel 元素从左到右按顺序排列,在包含他们的框的边缘处将内容换至下一行。
  • Grid 定义由行和列的灵活网格区域。
  • ViewBox 可拉伸或者缩放子元素。
  • Border 在一个子元素的周围绘制边框、背景。
  • DockPanel 可将子元素沿其边缘进行定位。
  • ScrollViewer 使内容显示在比其实际大小小的区域中,并适当显示滚动条。


具体使用

在新建立了Silverlight项目后,你会看到Blend自动帮你添加了一个布局控件“LayoutRoot”。


在右侧的属性栏目你可以看到这个布局控件的类型。


在左侧的工具栏中你可以找到更多的布局控件。


或者你知道自己想要的控件 直接输入他的名字便可以快速的找到他。


这里在LayoutRoot下添加上两个最简单的布局控件Canvas,并改变他们的背景颜色予以区分。


这里记住一个概念“所有的父控件对其子控件进行布局”。

尝试移动“Father”的位置,“Son”也跟着移动。即使“Son”在舞台上不在“Father”的内部,只要他们的在层次上的关系不发生变化,“Son”会一直受“Father”的影响。在Canvas中的表现是子控件和父控件的相对位置一直保持不变。

你也可以对现有的布局进行转化。


也能对现有的元素快速的组合到容器中。



所谓搭建自适应布局就是利用Grid的特性来搭建界面。


其内部的元素会根据父控件的属性来自行的调整自身的位置大小。


更加详细的Grid使用请翻阅Blend的帮助文件。


扩展
--------------------------------------------------------------------------------
布局控件的开发

之前我写过一些布局控件开发的文章,并开源发布两个布局控件,有兴趣的朋友可以看看。


原文地址:http://www.cnblogs.com/nasa/arch ... ayout_Controls.html

[[i] 本帖最后由 nasawz 于 2009-11-4 14:36 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( ICP05002321 )  

GMT+8, 2019-7-21 23:30 , Processed in 0.088643 second(s), 9 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表