博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Silverlight学习笔记(1)——样式的运用
阅读量:4978 次
发布时间:2019-06-12

本文共 3279 字,大约阅读时间需要 10 分钟。

本文将建立一个silverlight项目中的运用样式的简单实例,以下是详细步骤:


 

  新建一个Silverlight应用程序,名称SilverlightTest


 

  新建文件夹Assets,用以存放样式文件,在Assets文件夹中新建一个Silverlight资源字典,名称Styles.xaml,后面Silverlight项目引用到的样式资源我们将全部写在Styles.xaml中


  打开Silverlight项目的App.xaml,添加资源字典的source相对路径,这样就可以全局使用该资源,当项目很大时可使用MergedDictionaries对资源进行分类管理


  回到MainPage.xaml中,添加一个Head区域,

这里使用一个Grid做容器,取名HeadGrid,样式Style引用自静态资源StaticResource,在样式文件Styles.xaml中,添加一个名称为HeadGridStyle的样式,

在Styles.xaml中添加的HeadGridStyle样式,使用到了静态资源NavigationBackgroundColorBrush,同样来自Styles.xaml,

可以在Styles.xaml中,写下所有用到的ColorBrushes画笔,本身作为资源可以继续被其他资源所引用,

重新生成项目,可以看到MainPage上,HeadGrid的样式Style,已经按照Styles.xaml样式文件中设定的发生了改变,底色#FF484848,高度Height为42,边距空白Margin为0,在页面父元素中垂直对齐方式VerticalAlignment为Top,


  在HeadGrid中,添加一块Border范围,用来显示程序的logo和应用名,样式Style引用自静态资源HeadGridStyle,

          

在样式文件Styles.xaml文件中,添加一个名称为LogoBorderStyle的样式,TargetType="Border"标识该样式Style用于Border控件

在LogoBorder中添加一个StackPanel容器,存放一个logo区域ContentControl和一个应用名显示区域TextBlock,

添加的控件,样式Style均来自静态资源StaticResource,在Styles.xaml样式文件中,添加样式,

StackPanel的Orientation属性指定了,其内部元素的堆叠方式为Horizontal横向布局,

logo使用了一个Path路径来绘制,

AppName程序名使用到了Effect转换,添加了DropShadowEffect阴影效果,所使用到的画笔资源同样在Styles.xaml中添加,

重新生成项目,可以看到logo区域LogoBorder的样式Style已经发生了变化


  为了实现Silverlight模板页的效果,在页面中添加一块内容区域ContentBorder,当点击到不同页面时改变的只是内容区域,

navigation:Frame框架,需要添加引用命名空间    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation" ,

navigation:Frame.UriMapper对地址url对象的映射,需要添加引用命名空间    xmlns:uriMapper="clr-namespace:System.Windows.Navigation;assembly=System.Windows.Controls.Navigation",

需要用到样式Style,同样在Styles.xaml文件中添加如下,


  地址映射UriMapper的作用,是将标识符(URL)转换为新的相对路径(url),在程序中调用时会很简单和便于管理,

可以看到在地址栏中,只有#/Home,地址映射UriMapper会将其映射为相对路径/Views/Home.xaml


 

  在HeadGrid区域中,添加一个超链接区域AboutBorder,用来演示不通页面间的切换,

超链接区域AboutBorder中,用到了一个StackPanel容器,存放两个HyperlinkButton超链接按钮,TargetName="ContentFrame"说明需要导航到的框架名为内容区域ContentFrame,用到的样式Style,在样式文件Styles.xaml中添加,

重新生成项目,可以看到超链接区域AboutBorder的样式Style发生了改变,

点击超链接"主页"和"关于",可以实现两个页面间的切换,变换内容区域ContentBorder,其中显示新建的Home.xaml和About.xaml的内容


 

 

转载于:https://www.cnblogs.com/xwlyun/archive/2012/01/13/2321799.html

你可能感兴趣的文章
用JAVA编写浏览器内核之实现javascript的document对象与内置方法
查看>>
centos iptables
查看>>
寻找二叉查找树中比指定值小的所有节点中最大的那个节点
查看>>
如何设置输入框达到只读效果
查看>>
RT3070 USB WIFI 在连接socket编程过程中问题总结
查看>>
MIS外汇平台荣获“2013年全球最佳STP外汇交易商”
查看>>
LeetCode 题解之Add Digits
查看>>
hdu1502 , Regular Words, dp,高精度加法
查看>>
SpringBoot在idea中的热部署配置
查看>>
MyEclipse连接SQL Server 2008数据库的操作方法
查看>>
JS验证图片格式和大小并预览
查看>>
laravel5.2 移植到新服务器上除了“/”路由 ,其它路由对应的页面显示报404错误(Object not found!)———新装的LAMP没有加载Rewrite模块...
查看>>
编写高质量代码--改善python程序的建议(六)
查看>>
windows xp 中的administrator帐户不在用户登录内怎么解决?
查看>>
接口和抽象类有什么区别
查看>>
Codeforces Round #206 (Div. 2)
查看>>
**p
查看>>
优先队列详解
查看>>
VS2012 创建项目失败,,提示为找到约束。。。。
查看>>
设计类图
查看>>