《WPF程序设计指南》读书笔记——第3章 内容的概念
1.Content属性及字体相关的属性
using System;
using System.Windows;
using System.Windows.Media; namespace LY.DisplaySomeText
{
public class DisplaySomeText:Window
{
Brush brush = new LinearGradientBrush(Colors.Black, Colors.White, new Point(0, 0), new Point(1, 1));
[STAThread]
public static void Main()
{
new Application().Run(new DisplaySomeText());
}
public DisplaySomeText()
{
Title = "Display Some Text";
//Content = "Content can be simple text!";
//Content = System.EventArgs.Empty;
Content = DateTime.Now;
//设置字体系列
FontFamily = new FontFamily("宋体");
FontSize = 48;
FontStyle = FontStyles.Italic;
FontWeight = FontWeights.Bold;
//Background = brush;
Foreground = brush;
//将窗口大小调整为适应内容的大小
SizeToContent = SizeToContent.WidthAndHeight;
//设置边框的画刷
BorderBrush = Brushes.Red;
//设置上下左右边框的宽度
BorderThickness = new Thickness(25, 50, 75, 100);
}
}
}
1)没有Font类,需通过FontFamily(字体系列),FontSize、FontStyle、FontWeight等属性来设置。
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Input; namespace LY.RecordKeyStrokes
{
public class RecordKeyStrokes:Window
{
[STAThread]
public static void Main()
{
Application app = new Application();
app.Run(new RecordKeyStrokes());
}
public RecordKeyStrokes()
{
Title = "Record Key Strokes";
Content = "";
}
protected override void OnTextInput(TextCompositionEventArgs e)
{
base.OnTextInput(e);
string str = Content as string;
if (e.Text == "\b")
{
if (str.Length > 0)
str = str.Substring(0, str.Length - 1);
}
else
{
str += e.Text;
}
Content = str;
}
}
}
1)Content属性的值发生变化后,屏幕会自动更新。
2.图像的显示——Image类、Shape类
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes; namespace LY.ShowMyFace
{
public class ShowMyFace:Window
{
[STAThread]
public static void Main()
{
new Application().Run(new ShowMyFace());
}
public ShowMyFace()
{
Title = "Show My Face";
Uri uri = new Uri(@"C:\Users\LZ\Desktop\XX.png");
BitmapImage bitmap = new BitmapImage(uri);
Image image = new Image();
image.Source = bitmap;
image.HorizontalAlignment = HorizontalAlignment.Left;
image.VerticalAlignment = VerticalAlignment.Center;
//设置图片的边界
image.Margin = new Thickness(10, 20, 30, 40);
Content = image;
//显示一个椭圆
//Ellipse elips = new Ellipse();
//elips.Fill = Brushes.AliceBlue;
//elips.StrokeThickness = 50;
//Content = elips;
}
}
}
1)通过Image.Source指定一个Image对象的图片实例。
2)常见的几何图形类在System.Windows.Shapes命名空间中。
3)TextBlock对象可以将一段文字以不同的格式拼接在一起。
4)ContentControl类与ContentElement类不同,前者是控件,可以直接显示出来,后者要借助于前者才能显示出来。
《WPF程序设计指南》读书笔记——第3章 内容的概念的更多相关文章
- css权威指南读书笔记-第10章浮动和定位
这一章看了之后真是豁然开朗,之前虽然写了圣杯布局和双飞翼布局,有些地方也是模糊的,现在打算总结之后再写一遍. 以下都是从<css权威指南>中摘抄的我认为很有用的说明. 浮动元素 一个元素浮 ...
- 《Javascript高级程序设计》读书笔记(1-3章)
第一章 JavaScript简介 1.1 JavaScript简史 略 1.2 JavaScript实现 虽然 JavaScript 和 ECMAScript 通常都被人们用来表达相同的含义,但 Ja ...
- JavaScript权威指南读书笔记【第一章】
第一章 JavaScript概述 前端三大技能: HTML: 描述网页内容 CSS: 描述网页样式 JavaScript: 描述网页行为 特点:动态.弱类型.适合面向对象和函数式编程的风格 语法源自J ...
- 《JavaScript高级程序设计》 - 读书笔记 - 第5章 引用类型
5.1 Object 类型 对象是引用类型的实例.引用类型是一种数据结构,用于将数据和功能组织在一起. 新对象是使用new操作符后跟一个构造函数来创建的.构造函数本身就是一个函数,只不过该函数是出于创 ...
- 《JavaScript高级程序设计》 - 读书笔记 - 第4章 变量、作用域和内存问题
4.1 基本类型和引用类型的值 JavaScript变量是松散类型的,它只是保存特定值的一个名字而已. ECMAScript变量包含两种数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据 ...
- 《Linux程序设计》--读书笔记---第十三章进程间通信:管道
管道:进程可以通过它交换更有用的数据. 我们通常是把一个进程的输出通过管道连接到另一个进程的输入: 对shell命令来说,命令的连接是通过管道字符来完成的: cmd1 | cmd2 sh ...
- 《Visual C++ 程序设计》读书笔记 ----第8章 指针和引用
1.&取地址:*取内容. 2.指针变量“++”“--”,并不是指针变量的值加1或减1,而是使指针变量指向下一个或者上一个元素. 3.指针运算符*与&的优先级相同,左结合:++,--,* ...
- 《Linux内核设计与实现》第八周读书笔记——第四章 进程调度
<Linux内核设计与实现>第八周读书笔记——第四章 进程调度 第4章 进程调度35 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配 ...
- 《Linux内核设计与分析》第六周读书笔记——第三章
<Linux内核设计与实现>第六周读书笔记——第三章 20135301张忻估算学习时间:共2.5小时读书:2.0代码:0作业:0博客:0.5实际学习时间:共3.0小时读书:2.0代码:0作 ...
随机推荐
- 向MyEclipse添加Oracle数据库
向MyEclipse添加Oracle数据库 1.点击下面圈起来的位置,打开MyEclipse database Explorer视图. 2.在如图空白处右击,选择new进入New Database C ...
- LeetCode 122
Best Time to Buy and Sell Stock II Say you have an array for which the ith element is the price of a ...
- poj 1523 求割点
思路:对于所有节点,每次找的子树,key[root]++;输出时,对于根节点就输出key[root],对于其它节点i,输出key[i]+1; #include<iostream> #inc ...
- mac下的常用操作
打开 应用程序(command+shift+A)-实用工具-终端 open . 直接打开Macintosh系统目录 其他口令(与linux一样)ls 显示当前目录内 ...
- Asp.Net生命周期
最近回顾了一些新知识,在网上搜索了一下生命周期的相关知识:在这里与大家一起分享一下: Asp.net是微软.Net战略的一个组成部分.它相对以前的Asp有了很大的发展,引入了许多的新机制.本文就Asp ...
- Forms身份认证
引言 大家都知道Http是无状态的协议,所以访问一个url,你并不能知道用户在之前是否已经登陆过.但是许多业务上的逻辑又离不开user的信息,这个时候就可以借助身份认证来记录当前user的登录状态.这 ...
- jquery学习--选择器
选择器:basic $('button') html 标签 $('#test') 标签ID $('.test') 标签的class $('.test,#test,h1') 多选用逗号隔开 $('*') ...
- JAVA语法之小结
对于JAVA的语法,我做了个小节: 类名:所有类名称首字母大写,如果由几个单词组成,那么组合内的第一个单词首字母应当大写,可以包括数字但是不能以数字开头. 方法名:方法没应当小写,如果由几个单词组成, ...
- asp.net select Case条件语句的使用方法
原文:http://www.111cn.net/net/vb-net/38548.htm 如果 testexpression 与任何 Case expressionlist 表达式匹配 ,则执行此 C ...
- (转)mysql、sqlserver、oracle的默认事务的隔离级别
1.mysql的默认事务的隔离级别:可重复读取(repeatable read); 2.sqlserver的默认事务的隔离级别:提交读取(read committed); 3.oracle的默认事务的 ...