zoukankan      html  css  js  c++  java
  • WPF中Name和x:Name

    x:Name用来在XAML中表示一个制定对象的名称;可以通过它来访问XAML对应的资源;

    Name在.net的很多类中都存在,在WPF中可以和x:Name互换。

    结果:

    1. 在XAML中只存在x:Name,

    2. 我们使用的Name其实是映射到x:Name。

    使用:

    1. 所有的Type在xaml中都能使用x:Name,即使这个type 没有定义一个叫着Name的Property。因为xmal会在后台为其分配一个field来存储,以便在Binding等里面使用。
    2. 像FrameworkElement, VisualStateGroup的某些type,我们在xaml中可以使用Name来代替x:Name,因为它们定义了Name Property,但是最关键的是在type上声明了一个Attribute,[RuntimeNameProperty("Name")],正是这个attribute把Name映射到了x:Name上,所以让Name可以做到x:Name的功能。

    扩展:
    如果我们的某些type需要定义一个 Property,并且想做到x:Name的能力,别忘了加上RuntimeNamePropertyAttribute!

    关于两者的使用,主要看项目的编码规范。

  • 相关阅读:
    Chrome调试中的奇技淫巧
    正则表达式学习记录
    探寻<a>中的href和onclick
    鼠标事件记录
    读取本地文件并进行处理
    浏览器兼容性问题汇总
    前端经验总结
    PL/sql使用总结
    正反斜杠的使用场景记录
    isEmpty和isBlank的区别
  • 原文地址:https://www.cnblogs.com/bincoding/p/7257138.html
Copyright © 2011-2022 走看看