1、项目模板

Visual Studio自动配置编译器参数,并准备好一套基本的源代码。

2、App.xaml/App.xaml.cs

声明程序的进程,并指定程序的主窗体。

3、Attribute和Property

Attribute:特征,属于编程语言语法层面,是为了区分同类的不同语法元素。

Property:属性,属于面向对象理论范畴,指的是类中用来表示事物状态的成员。

Attribute只是用来影响类在程序中的用法,Property则对应抽象对象本身的性状。

使用能够进行面向对象编程的语言,只是把Attribute和Property做了映射,针对标签叫Attribute,针对对象则叫Property。

XAML标签中的Attribute和Property并不完全对应。

4、xmlns=XML-Namespace

5、x映射的Namespace,对应XAML语言解析处理相关的程序集

6、x:Class的作用是声明XAML解析器将包含它的标签解析成C#类后产生的类名。

7、使用标签的Attribute为对象属性赋值

(1)Attitude和Property之间的映射机制----TypeConverter/TypeConverterAttribute

(2)使用Property Element,以元素的形式表达一个实例的属性

8、标记扩展

举例:Binding

只有MarkupExtension的派生类可以使用标记扩展语法来创建对象

9、代码后置

.Net支持partial类并能将解析XAML所生成的类与x:Class所指定的类进行合并

10、XAML注释不能对Attribute进行注释,也不能嵌套

11、x:Name为对象声明引用变量,并为该对象的Name属性赋值。x:Name的功能涵盖了Name特征的功能,推荐全部使用x:Name。

12、x:Key为资源贴上用于检索的索引

13、x:Shared=false,则得到的资源为对象的副本,否则为同一对象,默认情况为同一对象。

14、x:Null、x:Static、x:Type、x:Code、x:XData

15、WPF中是数据驱动UI,数据是核心,UI从属于数据并表达数据。

16、Control是数据和行为的载体,没有固定的形象。

17、Visual Tree比Logical Tree更具体和更复杂。

18、控件通过自己的内容属性(Content、Child、Items、Children)引用着作为其内容的对象。XAML标签的内容区域专门映射了控件的内容属性。

19、Items Control能够使用对应的Item Container自动包装数据。

20、ListBox

ItemSource、DisplayMemberPath、SelectedValuePath

21、如果把两个元素放在Grid的同一个单元格内,则后写的元素将覆盖在先写的元素之上,如果想显示被盖住的元素,则可以把后写元素的Visibility属性设置为Hidden或Collapsed,也可以将Opacity属性设置为0.

22、StackPanel

Orientation、HorizontalAlignment、VerticalAlignment

23、Canvas

Canvas.Left Canvas.Top

24、DockPanel

DockPanel.Dock、DockPanel.LastChildFill

25、GridSplitter

ShowsPreview

26、WrapPanel

Orientation

《深入浅出WPF》笔记一的更多相关文章

  1. JavaScript高级程序设计笔记之面向对象

    说起面向对象,大部分程序员首先会想到 类 .通过类可以创建许多具有共同属性以及方法的实例或者说对象.但是JavaScript并没有类的概念,而且在JavaScript中几乎一切皆对象,问题来了,Jav ...

  2. javascript高级程序设计--笔记01

    概述 JavaScript的实现包含三个部分: 1  核心(ECMAScript)   提供核心语言功能 2  文档对象模型(DOM)  一套提供了访问以及操作网页内容的API 3  浏览器对象模型( ...

  3. javascript事件小结(事件处理程序方式)--javascript高级程序设计笔记

    1.事件流:描述的是从页面中接收事件的顺序. 2.事件冒泡:IE的事件流叫做事件冒泡,即事件开始从具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播到不具体的节点(文档). 3.事件捕获 ...

  4. JavaScript高级程序设计笔记(一)

    ---恢复内容开始--- 前三章为基础知识,为了方便以后查看,所以比较啰嗦.这里对函数的基本操作没有记录. 1.JavaScript的实现 虽然 JavaScript 和 ECMAScript 通常都 ...

  5. JavaScript高级程序设计笔记 事件冒泡和事件捕获

    1.事件冒泡 要理解事件冒泡,就得先知道事件流.事件流描述的是从页面接收事件的顺序,比如如下的代码: <body> <div> click me! </div> & ...

  6. <javascript高级程序设计>笔记

    1.要讲一个值转换成其对应的Boolean类型 ,可以调用转型函数Boolean(). var message=“hello world!”; var messageAsBoolean=Boolean ...

  7. javaScript高级程序设计笔记 2

    Undefinde Null Boolean Number String    基本类型 Object    引用类型 只有引用类型才能动态的添加属性 赋值基本类型和引用类型也不相同,复制的基本类型的 ...

  8. javaScript高级程序设计笔记 1

    核心  ECMAScript 文档对象模型  DOM 浏览器对象模型 BOM 延迟脚本  defer typeof操作符      判断字符类型  返回   undefined  boolean  s ...

  9. Javascript高级程序设计笔记 <第五章> 引用类型

    一.object类型 创建object实例的方式有两种: //第一种使用new操作符跟构造函数 var person= new Object(); person.name="小王" ...

  10. Javascript高级程序设计笔记(很重要尤其是对象的设计模式与继承)

    var obj = {'a':'a'}; var fun = function (){} console.log(typeof obj);//object console.log(typeof fun ...

随机推荐

  1. css3新增属性API

    写在前面:由于CSS5标准还未完全订下来,所以各种内核的浏览器都有自己的标准,为了不使属性混淆,所以各家在各自标准前加了一个前缀. -moz-  主要是firefox火狐 -webikt-主要是chr ...

  2. NOIp模拟赛 旅游

    很神奇的一道题,金策大爷给的题解: 什么叫神犇什么叫蒟蒻? IOI冠军的一句基本相同让我思考了一下午. 看完了题解我就想都没想开始用遍历二分图搞,但是搞到了65分后就总是会WA掉7组. 然后仔细的看了 ...

  3. python 遍历文件夹 文件

    python 遍历文件夹 文件   import os import os.path rootdir = "d:\data" # 指明被遍历的文件夹 for parent,dirn ...

  4. Docker distrubution in django

    https://www.syncano.io/blog/configuring-running-django-celery-docker-containers-pt-1/ Update: Fig ha ...

  5. 在页面头部<!DOCTYPE html ....> 前面不能有任何输出

    <!-- 这里不能有任何输出,注释也不行 --><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN& ...

  6. array_filter移除空数组

    $arr = array( "0"=> "564645", "1"=>"", "2"=& ...

  7. 重写UILabler的sizeThatFits方法,需要触发两次才会有效果

    #import "ViewController.h" @interface SpecialLabel:UILabel @end @implementation SpecialLab ...

  8. live555库中的testRTSPClient实例

    1.testRTSPClient简介 testRTSPClient是个简单的客户端实例,这个实例对rtsp数据交互作了详细的描述,其中涉及到rtsp会话的两个概念Source和Sink. Source ...

  9. 部署lamp服务器

    系统:CentOS 6.5 64位 1.卸载旧版本软件 rpm -qa | grep mysql #查询是否已经安装MySQL,如有执行下面的操作将其全部删除 rpm -e mysql --nodep ...

  10. Why you shouldn't use Entity Framework with Transactions

    Links EntityFramework This is a .net ORM Mapper Framework from Microsoft to help you talking with yo ...