WPF样式学习第一天

摘要:
此外,wpf还可以通过使用winform框架来满足许多需求。今天,让我们来了解一下简单风格的Button。ButtonStyle是源名称。值后面的值是字体类型(如下所示)Property=“Control.FontSize”设置字体大小Property=“Control.FontWeight”字体样式。

因为上班的公司要我用wpf写软件,刚毕业出来,学校也没教过wpf,只会winform,再加上wpf用winform的框架写法也能实现很多需求,但是就不能体现wpf的优点了,今天就先来学wpf的样式,因为对美的认识不足,所以排版不好,对代码有意见或建议的,希望多多提出,我是初学者。

今天就先弄个Button的简单样式吧

WPF样式学习第一天第1张

ButtonStyle是源名称。

Property="Control.FontFamily" 是用来声明字体的,后边跟着的Value的值是字体类型(下同)

Property="Control.FontSize"  设置字体大小

Property="Control.FontWeight" 字体样式,例如Value="Black"是设置成黑体字体的意思,

这样设置好后,拉一个button控件到窗体,然后加上Style="{StaticResource ButtonStyle}"就可以了,多个button绑定同一个数据源所有绑定的button的样式都是相同的

改数据源就可以达到修改所有button的目的,要修改某一个button,就只需要在那个button上添加样式即可,例如FontSize="15",就会覆盖数据源的字体大小。

不过这个写法,有一个缺的,就是,所有包含FontFamily,FontSize,FontWeight 样式的控件都会有效果,如果只改button的效果,就需要指定对象

把 <Style x:Key="ButtonStyle">写成<Style x:Key="ButtonStyle" TargetType="Button">

这样只有button控件可以绑定这个数据源了其他控件绑定会报错的

<Style TargetType="Button"
BasedOn="{StaticResource ButtonStyle}">
<Setter Property="Control.Foreground" Value="Green"/>
</Style>

加上这一段后,就是所有button都自行绑定的了在控件里就不写 Style="{StaticResource ButtonStyle}"这个绑定了,拖出来的button控件都自行绑定到设置好的样式

还有一个更简单的绑定使用同类型控件样式的方法,就下边这个

<Style TargetType="Button" >
<Setter Property="Control.Foreground" Value="Green"/>
</Style>

就是把上面的key:,去掉后,想这样写,所有来出来或XAML手动写的Button都会自动添加样式

今天就这样,一天学一点,哈哈哈

免责声明:文章转载自《WPF样式学习第一天》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Spyder——小技巧+快捷键监控视频中的主码流和子码流是什么意思?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android酷炫实用的开源框架(UI框架)

    原文链接:http://www.androidchina.net/1992.html 前言   忙碌的工作终于可以停息一段时间了,最近突然有一个想法,就是自己写一个app,所以找了一些合适开源控件,这样更加省时,再此分享给大家,希望能对大家有帮助,此博文介绍的都是UI上面的框架,接下来会有其他的开源框架(如:HTTP框架、DB框架)。 1.Side...

在Prism 框架中,实现主程序与模块间 UI 的通信

背景:    在模块的UI中包含 TreeView 控件,在该树形控件的每一节点前面定义了一个复选框,如图 需求:    在两个不同的应用程序中使用该控件,而它在不同应用程序中的外观则并不一致,按照本例,即一个显示复选框,一个不显示。 问题:     解决该问题的一个难处在于,Prism框架本身的设计原则——此 View 会被添加到主程序的 Shell...

SAP 实例- 页签tabsrip

屏幕页签:项目上有一需求,对标准TCODE 一个屏幕增加一个页签。于是做了个例子。 下面屏幕有两个页签。    我们来看一下屏幕结构。100屏幕是主屏幕,101,102是子屏幕,对应页签test1,test2. 看一下屏幕属性 100屏幕:  101屏幕和102屏幕属性相同:  看一下屏幕制作器:区域1 是两个push button; 区域2是tab...

基于jdk自带httpserver开发的最小完整MVC框架

基于jdk自带httpserver开发的最小完整MVC框架 410kb级的完整MVC:solon(83k) + jdkhttp(27k) + enjoy(227k) + snack3(73k) DEMO启动时间:0.1s solon 是一个插件框架,提供MVC,IOC,AOP,注解,插件机制。 jdkhttp 基于jdk8自带com.sun.net.ht...

开发maven项目,war包部署tomcat访问无效解决方法

 添加红框部门,移除tomcat插件 <!-- 移除嵌入式tomcat插件 --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> &...

CSS样式表定义让文字自动适应Table宽度

以下的例子是用样式实现,文字自动适应Table的宽度,并且超出的宽度的文字自动隐藏。IE下面还可以自动出现...的省略符号.关键样式:table-layout:fixed 固定布局的算法,则表格被呈递的默认宽度为 100% (For IE,Mozilla)text-overflow:ellipsis 当对象内文本溢出时显示省略标记(...) (For IE...