• xaml学习笔记


    1、什么是XAML

    žXML 指可扩展标记语言(EXtensible Markup Language)
    žXML 是一种标记语言,很类似 HTML
    žXML 的设计宗旨是传输数据,而非显示数据
    žXML 标签没有被预定义,需要自行定义标签
     
    žXAML用于声明UI及UI元素的一种格式
    žXAML用于声明样式和模板的格式,这些样式和模板应用于控件和 UI 的逻辑基础
    žXAML 定义 UI 的可视外观,关联的代码隐藏文件定义逻辑
    žXAML 可在 Expression Blend 与 Visual Studio 之间互换
     
    2、XAML基本语法:
     
    (1)命名空间
    žXAML命名空间的概念和C#代码中的Using,VB.Net代码中的Import类似,ž为对象元素的实例化提供引用类库声明,ž编程框架能够区分用户声明的标记和框架声明的标记,并通过命名空间限定来消除可能的标记冲突
     
    ž语法结构为“xmlns:”+“命名空间前缀名”,默认命名空间无需定义命名空间前缀名:
    <Page
        x:Class="App1.MainPage"
        IsTabStop="false"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="using:App1"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d">
    

     上面的代码中

    <Page>作为页面Root对象元素被声明,开始标签<Page>中,包含了多个“xmlns特性

    XAML语法规则中,“xmlns是属于强制关键字,被用来声明一个命名空间。
     
    常见类型命名:
    1.<Page>作为页面Root对象元素被声明
    2.开始标签<Page>中,包含了多个“xmlns特性
    3.XAML语法规则中,“xmlns是属于强制关键字,被用来声明一个命名空间。
     
    (2)对象声明:
    ž使用开始标记和结束标记将对象实例化为XML格式的元素

      <Canvas>           

     </Canvas>

    ž对象中可以包含其他对象

     <Canvas>

       <Rectangle></Rectangle>

     </Canvas>

    ž若一个对象中不包含其他对象,可以使用一个自结束标记来声明对象

       <Rectangle/>

    (3)属性

    ž属性是对XAML元素特征进行描述的方法,ž属性不允许在XAML中重复设置多次,ž允许在托管代码中改变元素的属性值
    ž只有实例化对象才可以设置实例属性,格式如下:

      <objectName propertyName=“propertyValue”/>

      或者

      <objectName propertyName=“propertyValue”>

      <objectName>

    ž每个属性对应一个属性值,属性值类型必须与属性匹配
    ž一个标记中可以设置对象的多个属性
     
    ž某些属性可以使用属性元素语法来设置,格式为:

      <object>

        <object.property>

           <!—元素属性值-->

        </object.property>

      </object>

    (4)附加属性

    ž附加属性作用于支持附加属性的元素
    ž
    ž附加属性是由支持附加属性的父元素产生作用,支持附加属性的元素会继承所在的父元素的属性
    ž
    ž附加属性的格式:AttachedPropertyProvider.PropertyName
    <Canvas>
    <Rectangle Canvas.Left="50" Canvas.Top="50" Width="200" Height="150" RadiusX="10" RadiusY="10" Fill="Gold"/>
    </Canvas>
    

    (5)依赖属性

    1.依赖属性,英文称为Dependency Properties,是Windows 8Silverlight特有的属性系统。
    2.在传统.Net应用开发中,CLR属性是面向对象编程的基础,主要提供对私有字段的访问封装,开发人员可以使 用getset访问器实现读写属性操作。依赖属性和CLR属性类似,同样提供一个实例级私有字段的访问封装,通过GetValueSetValue访问器实现属性的读写操作。
    3.依赖属性最重要的一个特点是属性值依赖于一个或者多个数据源,提供这些数据源的方式也可以不同,例如,通过数据绑定提供数据源,通过动画,模板资源,样式等方式提供数据源等,在不同的方式数据源下,依赖属性可以实时对属性值进行改变。

    <Page.Resources>
    <Style x:Key="ButtonStyle" TargetType="Button">
      <Setter Property="Foreground" Value="Red"/>
      <Setter Property="FontSize" Value="24"/>
    </Style>
    </Page.Resources>
    
    <Button Content="依赖属性测试" Style="{StaticResource ButtonStyle}" Width="240"/>
    未完待续
  • 相关阅读:
    【数据结构第二周】队列知识点整理
    【数据结构第二周】堆栈知识点整理
    【数据结构第二周】线性表知识点整理
    【数据结构第一周】最大子列和问题整理
    网络设置
    QT 安装教程
    C# 复制粘贴板 多行粘贴
    设置网络适配器IP优先级
    MySQL 查重复单号和删重复单号
    Mysql 10053 SocketException 你的主机中的软件中止了一个已建立的连接。
  • 原文地址:https://www.cnblogs.com/lhyun/p/3427041.html
Copyright © 2020-2023  润新知