zoukankan      html  css  js  c++  java
  • WPF学习笔记(一)——WPF初探

    鉴于对WPF所带来的华丽外观的吸引,也为了更好的学Silverlight,故先学WPF。

    1、XAML 定义

        XAML是一种相对简单、通用的声明式编程语言,它适合于构建和初始化.NET对象。(初次感觉它就是一种XML语言,只是有了自己的实现方式。使用起来有点像写web程序。)

    2、XAML命名空间

        XAML文件的根对象元素指定至少一个XML命名空间,用于验证自己和子元素。

    <Window x:Class="WPFDemo.demo3_1" 
        xmlns
    ="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x
    ="http://schemas.microsoft.com/winfx/2006/xaml"></Window>

    默认命名空间 xmlns,次要命名空间xmlns:X,CS文件x:Class。

    3、类型转换器与标记扩展

       类型转换器:和写.NET的Web页面差不多。

       标记扩展:很有用的东西,用于扩展XAML的表达能力。特性值用一些规范好的字符串组成,并由“{}”括起来。如

    <Button Height="x:Static SystemParameters.IconHeight}" Content="{Binding Path=Hight,RelativeSource={RelativeSource Self}}"></Button> 

    其中Static是标记扩展类;SystemParameters.IconHeight和Self是定位参数,是被作为字符串参数传入扩展类的相应构造函数中的;Path和RelativeSource是命名参数,可以用来在已构造好的扩展对象上设置相应名字的属性。

    4、对象元素的子元素

       一个对象元素可以有3种类型的子元素:内容属性值,集合项,或者一个能够通过类型转换到它的父元素的值。

    5、命名XAML元素

       用Name关键字。

    <Button x:Name="okName">OK</Button>

    6、逻辑树与可视树

        逻辑树很直观,有属性、事件、资源等的传递性。可视树基本上是逻辑树的扩展,是WPF架构的核心组成部分。

    7、依赖属性

       其实就是普通的.NET属性。

    8、对多个提供程序的支持

        5步流程:判断基础值 ---->计算(如果有表达式的话)---->应用动画---->限制(Coerce)---->验证

    9、附加属性

        是依赖属性的特殊形式。感觉也没什么特别的。就是某一元素默认是没有的基本属性可以用另外一种形式调用而已。

    10、路由事件

        与.NET事件很像。

    总结:终归是.NET的一个支点,很多地方都是共通的,重点就是对XAML的理解。

  • 相关阅读:
    使用java调用fastDFS客户端进行静态资源文件上传
    FastDFS概念、原理及CentOS7下安装实战
    Centos7安装Nginx实战
    Maven install [WARNING] The artifact aspectj:aspectjrt:jar:1.5.4 has been relocated to org.aspectj:aspectjrt:jar:1.5.4
    IOS照片颠倒分析及PHP服务端的处理
    web开发实战--弹出式富文本编辑器的实现思路和踩过的坑
    小木的智慧屋--微信公众号的推广案例分析(1)
    web开发实战--图片裁剪和上传
    springmvc学习笔记--ueditor和springmvc的集成
    网页闯关游戏(riddle webgame)--H5刮刮卡的原理和实践
  • 原文地址:https://www.cnblogs.com/learn/p/1473001.html
Copyright © 2011-2022 走看看