全图解Silverlight2之三(布局篇+外一实例),该如何处理
发布时间:2011-06-27 20:16:21 文章来源:www.iduyao.cn 采编人员:星星草
全图解Silverlight2之三(布局篇+外一实例)
出差回来休整几天,该写写布局了,布局挺简单,但研究下来还是能发现很多Silverlight2的新特性,体会一下.
先创建个项目,写下布局,看看效果,再自己寻思着做了个小实例,代码不优美,写法也笨,主要想表现下布局控件的特性,高手绕行.
一 创建项目
创建项目
选择此项,不用配置直接测试
二 添加图片文件,为了测试效果,我先添加了三个大图,三个长条按钮,图片一般,凑合一下吧
三 添加的图片,源代码打包随后给个链接下载
★★布局有三种方式:★★
Canvas面板:布局控件内所有控件位置由 Canvas.Top 和 Canvas.Left 来定位,是绝对定位的布局.
StackPanel面板:序列布局方式,设置Orientation 属性来选择横向还是纵向.
Grid面板:类似表格布局,方式灵活,多说一句,在silverlight中几乎所有控件内都可以添加控件,方式非常灵活,所以实现一个功能的方法也多种多样.
四 先按Canvas布局,添加三个图片控件进来
五 直接放入进来的效果如下,图片都是重叠放置的
六 可以设置绝对位置来排列图片,为了方便显示,我把图片做了缩小
七 StackPanel布局,为了方便显示,同样缩小了图片
八 Grid布局,这个是非常灵活的,先建立行和列,然后把图片放在相应的行和列中,代码如下
效果如下
九 为了更好的说明,我做了个小例子,思路比较怪,可能和高手有所不同
先做一个一行三列的表格,两旁列宽为60像素
设置Grid的背景图片,利用背景图片来显示我想显示的内容,背景显示用的是BitmapImage命名为bg
在Grid两旁列中放置两个StackPanel布局控件分别命名为o1,o2,为了按顺序排列移动的长条按键
添加了三个左键单击事件
在代码中添加一个清除子控件的方法,在这里为了方便的做这个小例子,所以用了最直接的方法,清除子控件,重新添加的方法
清除相关控件,在单击事件中,重新按点击方式添加在相应的位置上,同时改变背景图片
其它事件中,方法类同,分别添加在不同的StackPanel中
最终效果如下,一个简单的排列显示
总结如下:
在这里没有用绝对定位,用了Grid和StackPanel,分别用了其对位置的控制方式,
使用了改变Grid背景的方式来显示了相关内容,个人认为此方法非常折中,仅供显示,
在这还方便的添加了三个点击事件,下次再深入的和大家讨论一些技术性的话题
------解决方案--------------------
逐句地看完这个帖子以后,我的心久久不能平静,震撼啊!为什么会有如此好的帖子!我纵横网络bbs多年,自以为再也不会有任何帖子能打动我,没想到今天看到了如此精妙绝伦的这样一篇帖子。楼主,是你让我深深地理解了‘人外有人,天外有天’这句话。谢谢侬!在看完这帖子以后,我没有立即回复,因为我生怕我庸俗不堪的回复会玷污了这网上少有的帖子。但是我还是回复了,因为觉得如果不能在如此精彩的帖子后面留下自己的网名,那我死也不会瞑目的!能够在如此精彩的帖子后面留下自己的网名是多么骄傲的一件事啊!楼主,请原谅我的自私!我知道无论用多么华丽的辞藻来形容楼主您帖子的精彩程度都是不够的,都是虚伪的,所以我只想说一句:您的帖子太好看了!我愿意一辈子的看下去!这篇帖子构思新颖,题材独具匠心,段落清晰,情节诡异,跌宕起伏,主线分明,引人入胜,平淡中显示出不凡的文学功底,可谓是字字珠玑,句句经典,是我辈应当学习之典范。就小说艺术的角度而言,这篇帖子不算太成功,但它的实验意义却远远大于成功本身。正所谓:“一马奔腾,射雕引弓,天地都在我心中!”楼主真不愧为无厘界新一代的开山怪!本来我已经对这个社区失望了,觉得这个社区没有前途了,心里充满了悲哀。但是看了你的这个帖子,又让我对社区产生了希望。是你让我的心里重新燃起希望之火,是你让我的心死灰复燃,是你拯救了我一颗拨凉拨凉的心!本来我决定不会在社区回任何帖子了,但是看了你的帖子,我告诉自己这个帖子是一定要回的!这是百年难得一见的好贴啊!苍天有眼啊,让我在优生之年得以观得如此精彩绝伦的帖子!
------解决方案--------------------
不错学习了,觉得比DIV好控制多了
------解决方案--------------------
不能拖放 -_-
------解决方案--------------------
不错,挺好,收藏了
------解决方案--------------------
很好,支持
------解决方案--------------------
学习了,谢谢
------解决方案--------------------
看来太简单,不值下载
------解决方案--------------------
饿 完全看不到图
------解决方案--------------------
支持
------解决方案--------------------
学习,感觉还不错的
------解决方案--------------------
不错,挺好,收藏了
------解决方案--------------------
顶啊。。是之三,那一和二呢?
------解决方案--------------------
学习了,谢谢
------解决方案--------------------
VS2008?C#的代码?
------解决方案--------------------
o
------解决方案--------------------
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
新手求助LineSeries折线的圆点怎么去掉
由于数据比较密集,LineSeries的圆点很大程度上影响了折线图的展示,请问可不可以设置式样把...
-
求教大家:如何继承SL5中的DrawingSurface?
自己写了一个MyDrawingSurface类,继承自DrawingSurface,只在原有基础上新增了几个属性而已...
-
[讨论]Silverlight5 RTM 只能在OOB模式下使用3D硬件加速?
来自:http://silverlight.bayprince.com/tutorials.php?tutorial=8
Silv...
-
LineSeries横轴名称重叠问题
LineSeries横轴名称多的时候,就会重叠,看不清楚,有设置让不重叠,省略一些名称
------解决方案---------...
-
Silverlight DataGrid依某列值決定字体顏色
比如:表里有三列:id,namd,age
我希望当age<18时,age数字的颜色为红色.
本人在网上查过...
-
新手问题,关于WPF的DataGrid控件列标题居中问题!
内容居中已经解决但是标题居中查过一些资料无果!网上有silverlight 4的DataGrid居...
-
serverlight 地图路径查询
就是在serverlight地图上创建两个点,实现最短路径的查询功能,不知道有发实现吗?
------解决方案--------...
-
Microsoft Expression Blend 4 的密钥谁有?
下载了一个Microsoft Expression Blend 4 可是要密钥 怎么办
------解决方案--------...
-
silverlight的输入框在win7平板电脑上不能被感知
最近用了个win7的平板电脑,普通页面如果有输入框,光标点击在上面,光标附件会出现一...
-
Win 8将Silverlight和.Net打入冷宫?
在D9大会上,微软演示了Windows 8如何为应用程序整合了一个以触摸操作为主的用户界面,这些应用...