.NET开发Silverlight程序:界面和对象模型_第1页
.NET开发Silverlight程序:界面和对象模型_第2页
.NET开发Silverlight程序:界面和对象模型_第3页
.NET开发Silverlight程序:界面和对象模型_第4页
.NET开发Silverlight程序:界面和对象模型_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.NET.NET 开发开发 SilverlightSilverlight 程序:界面和对象模型。程序:界面和对象模型。本文关键字:本文关键字:var alimama_pid=mm_10096109_566393_892186; varalimama_titlecolor=0000FF; var alimama_descolor =000000; varalimama_bgcolor=FFFFFF; var alimama_bordercolor=E6E6E6; varalimama_linkcolor=008000; var alimama_bottomcolor=FFFFFF; varali

2、mama_anglesize=0; var alimama_bgpic=0; var alimama_icon=0;var alimama_sizecode=11; var alimama_width=760; varalimama_height=90; var alimama_type=2;一个不错的博客,东东还多些!http:/SilverlightSilverlight 是用 XAML 语言来描述界面界面的。XAML 是 eXtensibleApplication Markup Language 的缩写,也就是可扩展的应用程序标记语言。在 WPF(Windows Presentation

3、 Foundation)中,第一次出现了 XAML,用来描述.NET 语言。而 Silverlight 中的 XAML 只用来对用户界面作出统一的描述,弥补 HTML/CSS 等在界面定制上的不足,并使开发人员和设计人员可以运用同一种语言进行交流,减少额外的工作量。因此,Silverlight XAML 的语法相对WPF 中的 XAML 相对要简单一些,也更容易上手。虽然我们可以使用 Microsoft Expression Studio 的视觉化方式设计界面,但是了解 XAML 的基本语法可以帮助我们更好的定制自己的界面。如果想要直接编写 XAML,使用 Visual Studio 2008

4、 则可以提高编写的效率,因为里面有自动感应功能(Intellisense)。CanvasCanvas 容器和各种元素容器和各种元素任何 Silverlight 应用程序的界面描述都是以一个叫 Canvas(画布)的容器为根开始的。当我们在 Microsoft Expression Blend 或者 Visual Studio2008 中创建一个新的 Silverlight 项目后,总会生成一个只包含根 Canvas的.xaml 文件,如下所示:以下是引用片段:任何元素都必须添加在这个根 Canvas 容器的里面,因为一个界面里只能有一个这样的根 Canvas 容器。我们可以在这个根容器里加入子

5、容器或者其他元素。每个元素都有一个标签相对应。比如在子容器中添加一个矩形,并在根容器中添加一个椭圆形:以下是引用片段:本文关键字:本文关键字:Silverlight 定义的常见的几何图形包括矩形,椭圆,直线,多边形,多叉线(不封闭的折线),路径(可以画出任意的形状和线条,比如不封闭的曲线123123 ),等等。允许我们定制显示在界面上的文字。附加元素属性附加元素属性尝试以上代码,可以发觉我们其实看不到任何我们想要的性状,因为它们的默认的大小属性均为 0。可见,仅使用这些元素标签还不足以得到我们想要得形状,我们需要在标签中设置它的属性值,确定它的大小、位置等等。观察根 Canvas,我们已经可以

6、了解到一些属性的定制,比如只在根节点出现的定义 xml 名字空间(xmlns)以及自定义的 xml 名字空间(xmlns:x)。其中还有一些常用的属性,如宽(Width),高(Height)。在 Canvas 中,这两个属性既可以用像素值来表示,也可以用百分比来表示。x:Name 表示该元素示例的名称,有了这个名称,我们就可以在.NET 代码中操作这个元素示例。Background属性设置了背景的颜色,不设置这个值,则该元素透明。每个元素都有属于自己的一组属性。比如,我们可以将刚才的代码改进一下:以下是引用片段:其中 Fill 指定了填充色,Stroke 和 StrokeThickness 定

7、制了形状的轮廓线条的颜色和粗细。我们可以看到根 Canvas 下的子元素(包括子容器 Canvas)的位置属性均表示相对上一级 Canvas 的坐标位置。值得注意的是这里虽然矩形myRect 超出了 subCanvas 定义的边界范围,但它并不会被 subCanvas 剪裁,且仍属于 subCanvas 中的元素。顺便一提,目前我们只有 Canvas 一种容器,在不久的将来,Silverlight将会提供更多的容器,使布局管理更方便。对象模型对象模型在 WPF 中,XAML 是.NET 代码的 xml 表现形式;而在 Silverlight 中,我们同样有与 XAML 相对应的.NET 语言编

8、程方式。其中,每一个元素对应一个对象,元素属性在其.NET 对象中都有对应的属性。例如先前一个例子中的矩形就可以用以下 C#语言来表示:以下是引用片段:RectanglemyRect=newRectangle();myRect.SetValue(Canvas.TopProperty,117);myRect.SetValue(Canvas.LeftProperty,123);myRect.Width=100;myRect.Height=100;SolidColorBrushbrushBlue=newSolidColorBrush();brushBlue.Color=Colors.Blue;myR

9、ect.Fill=brushBlue;SolidColorBrushbrushRed=newSolidColorBrush();123123 brushRed.Color=Colors.Red;myRect.Stroke=brushRed;myRect.StrokeThickness=3;这里 SolidColorBrush 对象派生自 Brush,是画刷的一种。Silverlight 里定义了好几种不同的画刷对图形进行填充。属性 Fill 的默认画刷是SolidColorBrush,因此可以在.xaml 文件中可以直接给 Fill 属性赋值,但在.NET 语言中则必须明确指出画刷的类型。有关画刷的具体内容我们会在以后介绍。刚才用 C#定义出来的矩形还是独立的,如果要把它在界面上表示出来,则需要在其后加上下面这句代码将矩形加入上一级 Canvas 中:以下是引用片段:Children.Add(myRect);google_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论