ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 分析Silverlight Button控件布局

分析Silverlight Button控件布局

原创 Linux操作系统 作者:iDotNetSpace 时间:2009-03-13 13:52:51 0 删除 编辑

Silverlight也算一个比较开放的技术。Button控件其实也是一些标准的Grid、Canvas、Rectangle、TextBlock组成的。(图1)

要做到按钮的宽度和高度根据字体大小和字数自动适应,其实就是调整好Layout,做以一个能自适应的界面。在Silverlight中Grid这个容器是能自适应的。是把字体TextBlock放到一个Grid中,对这个TextBlock设置相当Grid的边距,就好像是html中Margin的概念一样。(图2)别的元素也是一样在TextBlock下层是有Rectangle等元素是来制作背景色、边框色,在TextBlock的Rectangle用来制作高光,他们都容纳在Grid中。
在微软官方的控件中TextBlock用contentPresenter来代替。contentPresenter可以简单的理解成一个容器但是只能容纳一个对象。这个对象也可以再是一个容器比如Canvas、Grid、StackPanel等。
其中上边所提到的元素都没有强行的设置他们的Width和Height。
这样在使用中有两种制定他们大小的方法
一是设置最外层的Grid的Width和Height属性,因为内部的元素都是相当Grid做的布局,所以他们都会自适应外层的宽高。指定里边的一个元素的尺寸也会对外层的Grid产生作用。
再一个是设置Grid相对其夫级控件的边距。其效果能更灵活一些更能做自适应布局。
容器控件多的时候可能会用混淆。明确上一个概念“夫控件只对其子控件产生布局”。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-567169/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5316318