《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作 ...
随机推荐
- Ionic中弹窗
Ionic中弹窗有两种ionicModal和ionicPopup; $ionicModal是完整的页面: $ionicPopup是(Dialog)对话框样式的,直接用JavaScript设定对话框的一 ...
- LeetCode 242
Valid Anagram Given two strings s and t, write a function to determine if t is an anagram of s. For ...
- ip 子网掩码 网关 DNS
这一篇文章也很好: 原文引用于: http://www.cnblogs.com/jiqing9006/p/3365939.html 内外网ip: IP地址: IPv4地址分为A.B.C.D.E五类, ...
- mysql数据库千万级别数据的查询优化和分页测试
原文地址:原创 mysql数据库千万级别数据的查询优化和分页测试作者:于堡舰 本文为本人最近利用几个小时才分析总结出的原创文章,希望大家转载,但是要注明出处 http://blog.sina.com. ...
- saltstack实战3--配置管理之grains
grains是什么 grains是minion服务启动后,采集的客户端的一些基本信息,硬件信息,软件信息,网络信息,软件版本等.你可以在minion上自定义一些grains信息. 它是静态的信息,mi ...
- StringBuilder 类
表示可变字符字符串.无法继承此类. 此类表示值为可变字符序列的类似字符串的对象.之所以说值是可变的,是因为在通过追加.移除.替换或插入字符而创建它后可以对它进行修改.有关比较,请参见 String 类 ...
- EF 实体+ Newtonsoft.Json 输出JSON 时动态忽略属性的解决方法
最近的项目采用的是 ASP.NET mvc 4.0 + entity framework 5.0 ,后台以JSON形式抛出数据是借助于Newtonsoft.Json , 要想忽略的属性前面添加特性 ...
- DialogFragment
DialogFragment 从Android 3.0 (API level 11)开始引入,如果想在低于该版本的系统上使用,需用android.support.v4.app.DialogFragme ...
- linux下vsftpd的安装与配置说明
问题: 1.530 Permission denied.答:配置文件中userlist_enable=YES(如果启用即YES,则看userlist_deny=YES/NO,如果为NO,则要把登录的用 ...
- SQL中PERSISTED关键字
PERSISTED 指定 SQL Server 数据库引擎将在表中物理存储计算值,而且,当计算列依赖的任何其他列发生更新时对这些计算值进行更新.将计算列标记为 PERSISTED,可允许您对具有确定性 ...