Silverlight中的Button控件的两大特殊属性

开始介绍Content属性之前,请大家记住以下继承树:

创新互联-专业网站定制、快速模板网站建设、高性价比岱岳网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式岱岳网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖岱岳地区。费用合理售后完善,十余年实体公司更值得信赖。

 
 
 
 
  1. Control(abstract)
  2.      ContentControl
  3.            Frame
  4.                 PhoneApplicationFrame
  5.       UserControl
  6.            Page
  7.                 PhoneApplicationPage

注意ContentControl中Content属性是一个object对象!

在Silverlight中Button从ContentControl派生而来,间接从Control派生而来,因为属性继承的原 因,Button控件具有ContentControl控件的Content属性,其中Content属性是object对象,所以我们可以通过以下代码 对Button控件内容进行定义:

 
 
 
 
  1.      
  2.           Click this Button!
  3.      
  4.   

从表面上上述代码没错,但是在silverlight中不允许这样,另外凡是从ContentControl控件派生而来的控件,其Content属性元素标记可忽略,所以更改后的代码如下:

 
 
 
 
  1. xmlns:system="clr-namespace;assembly=mscorlib"
  2.   
  3.      Click this Button
  4.   

如果你不喜欢Button控件只显示普遍的文本内容,你也可以设置其Content属性内容为其它元素,但是该元素必须为FrameworkElement派生对象。例如设置Button控件的Content属性内容为一张图片:

 
 
 
 
  1.      
  2.                  Stretch="none"/>
  3.  

由于Button控件是ContentControl派生元素,故Button.Content属性元素语法形式可省略......

另外也可以设置Buton控件内的文本特殊的格式,例如以下代码设置了斜体的文本内容:

 
 
 
 
  1.       
  2.           Click Me!
  3.       
  4.   

如 果想设置Button控件的Content属性内容为含渐变画刷的椭圆,我们就要用到ContentTemplate属性了;因为如上文所示,如果想设置 Button控件的Content属性内容为非文本内容,就要设置其Content属性内容为FrameworkElement类派生元素,而这里为含渐 变画刷的椭圆,而渐变画刷不是FrameworkElement派生元素,所以就要控制Button控件的ContentTemplate内容模板 了.....

相关XAML代码为:

 
 
 
 
  1.       
  2.            
  3.                 
  4.                
  5.            
  6.       
  7.       
  8.            
  9.                  
  10.                             Height="100"
  11.                             Fill="{Binding}"/>
  12.            
  13.       
  14.   

显示结果为:

上 述XAML代码中有一个特殊的Binding语法标记,既没有设置Source,也没有设置ElementName或Path属性,只有 “{Binding}“,这表示绑定内容为上述渐变画刷;上述代码实际上还改变了该Button控件的一部分视觉树,其标准Button控件的视觉树为一 下形式:

而这里经过我们对ContentTemplate进行设置,该控件视觉树已经变成以下形式:

Button控件的ContentTemplate属性值为DataTemplate类型,对DataTemplate进行设置可以改变控件的一部分视觉树!

原文:http://www.cnblogs.com/YueHeiZS/archive/2011/12/27/2304126.html

分享名称:Silverlight中的Button控件的两大特殊属性
当前链接:http://www.csdahua.cn/qtweb/news14/276964.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网