Silverlight中的像素和比例缩放2011-09-23最近在学习Silverlight,也在准备考六级,同时在网上找到的一些Silverlight的教程都是beta1的,在正式版中有很多的问题,所以尝试着通过翻译Jesse Liberty的博客来提高自己,同时也希望通过这样和大家一起学习。原文地址:http://silverlight.net/blogs/jesseliberty/archive/2008/10/21/sizing-in-silverlight-pixels-and-stars.aspx注:Star翻译为比例缩放,找了几本字典,貌似Star也没这个意思。在Silverlight中,实际上所有的度量(如高、宽等)的单位都是像素,除了明确指出它们不是的时候。像素当你新建一个形状,或者设置边缘缩进,或者填充一个控件的长、宽的时候,隐式地(默认地,与显示相对)单位是像素。如:Code
<Button Content="Button" Width="100" />
<CheckBox Content="CheckBox" Height="20" Width="75"/>
<StackPanel Orientation="Horizontal" >
<RadioButton Height="29" Width="106" Content="RadioButton1" />
<RadioButton Height="29" Width="136" Content="RadioButton2" />
</StackPanel>
<ListBox Width="100" Height="100">
</ListBox>
<Slider Width="250" Height="25"/>
<swc:Calendar Height="150" Width="200" />
从按钮的长到日历控件的高,所有上面的单位都是像素。比例缩放有两种方式可以设置网格的行高或者列宽,一种是用绝对值,即像素;另一种是按比例分配。当你在Blend的空白部分通过鼠标画出两行时,默认的不是通过像素绝对地定义两行的大小,两者之间是相互关联的,一个变化,另一个随之改变。在面板中会有把打开的锁来标识出来。同时在XAML文件中需在数值后加"*"。