【问题标题】:Dependency property in wpf/silverlight vs. javascript object propertywpf/silverlight 中的依赖属性与 javascript 对象属性
【发布时间】:2011-06-22 16:12:38
【问题描述】:

我最近在学习silverlight,发现它很难理解依赖属性系统的本质。我可以在silverlight的依赖属性和javascript的对象属性之间做一个类比吗?它们都是由类似哈希表的数据结构实现的,并且可以在运行时添加/删除,对吗?

【问题讨论】:

    标签: javascript wpf silverlight dependency-properties


    【解决方案1】:

    你错了,WPF depdency properties 不是动态的,对象具有一组依赖属性,它们存储值的方式可能相同(我认为它更像是一个字典结构)但你不能只拥有一个新属性在飞行中。但是有一个叫做 attached properties 的东西允许附加属性。

    我建议你阅读我链接的那些文章,它们应该很好地解释了一切。

    【讨论】:

      【解决方案2】:

      将 DependencyProperties 视为指针或地址。不是将属性设置为值,而是将其设置为指向另一个值的地址。

      例如,不是说 TextBox 的文本等于 SomeValue,而是说它指向 ViewModel 中的字符串值。或者它指向某个对象的 Name 属性。或者指向一个指定的ComboBox 的SelectedText。当然,你总是可以说它直接指向一串“SomeValue”

      <TextBox Text="{Binding SomeProperty}" />
      <TextBox Text="{Binding SomeObject.SomeProperty}" />
      <TextBox Text="{Binding ElementName=MyComboBox, Path=SelectedText}" />
      <TextBox Text="SomeValue" />
      

      基本上,它是一个依赖于其他值的属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-16
        • 2010-11-30
        • 2014-05-23
        • 1970-01-01
        • 2022-11-27
        • 2012-11-27
        相关资源
        最近更新 更多