打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
认识HTML,学习XAML如此轻松 - 任延伟 - 博客园
XAML与HTML一样都是XML的一种,熟悉HTML之后很容易掌握XAML的用法,这里仅说明XAML与HTML不同的地方
1.XAML区分大小写
无论是元素名称还是元素属性,XAML都是区分大小写的,如:
<StackPanel Height="300"></StackPanel>
写成
<stackpanel height="300"></stackpanel>
是错误的,XAML解析器讲按错误处理,而不是警告!
2.XAML支持使用属性元素语法来为元素属性赋值
这句话看起来有点绕口,先让我们看看HTML怎么为一个元素属性赋值,如:
<table id="demoTable" width="800"></table>
这种方式成为使用属性语法来设置属性值,那XAML支持的属性元素语法是什么样的呢,如:
<Rectangle Name="demoRect">
<Rectangle.Height>800</Rectangle.Height>
</Rectangle>
这种为属性赋值的方式不是采用在元素里面直接设置,而是在元素里面添加了一个新的子元素,子元素的名称的格式为“元素.属性”,元素值采用内容语法设置
3.元素属性可能出现命名空间前缀
在Silverlight中,非FrameworkElement命名空间下面的类不具有Name属性,例如动画Storyboard,但是在XAML里面定义了动画而没有标示后台代码怎么引用呢,为了剞劂这个问题,XAML采用命名空间前缀的方式解决了这个问题,如:
<StackPanel.Resources>
<Storyboard x:Name="a">
                      
</Storyboard>
</StackPanel.Resources>
这里用了前缀x(默认的前缀,根据定义)设置了Name属性,这样后台代码就可以引用并进行处理了,x:Name与Name的功效相同,欲知更多关于XAML命名空间的内容,请查阅Silverlight文档
4.可以为XAML元素属性动态赋值
默认情况下,XML为元素属性赋值使用简单类型,如String,Int等,然而XAML可以使用类似变量的方式为属性赋值,变量要用大括号来标识,如:
<Canvas.Resources>
<Style TargetType="Border" x:Key="DemoStyle">
<Setter Property="BorderBrush" Value="Red" />
</Style>
</Sanvas.Resoutce>
用法:
<Border Style="{StaticResources DemoStyle}">……</Border>
上面预先定义了名为DemoStyle的样式,下面Border元素使用了这个样式,注意,使用时前面要加上StaticResources标识,标识引用了前面定义的静态资源
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
闲话WPF之十三(WPF中的资源)
闲话WPF之十(Dependency属性 [2] )
XAML——Vista标记语言
x:Name标记特性与Name属性
附加属性
WPF 元素的查找
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服