【问题标题】:Silverlight and binding to anonymous typesSilverlight 和绑定到匿名类型
【发布时间】:2009-10-14 21:14:38
【问题描述】:

ScottGu 在一个公认的 old post 中指出,匿名类型的数据绑定“正常工作”,因为匿名类型只是“语法糖”(无论这意味着什么),并且从 CLR 的角度来看,它们和我的任何东西一样真实会写的。

但是 Mike Hillberg postssilverlight 并非如此,根据我的经验,我会同意他的观点 --- 但我希望 Scott 是对的,因为构建这些所谓的“名义类型”是我认为匿名类型将我们从中解放出来。

有人可以解释为什么在 Silverlight 绑定到匿名类型的情况下不起作用。

【问题讨论】:

    标签: silverlight data-binding


    【解决方案1】:

    Mike Hillberg 是正确的,在 Silverlight 中您不能绑定到匿名类型。真的很遗憾,因为它可以解决各种问题,但你去吧。

    Silverlight 中的绑定依赖于反射,它仅支持对公共类型的反射。由于匿名类型是内部的,匿名类型不能用于绑定。

    为什么 Silverlight 不能反映内部类型?不知道,我也想知道。

    【讨论】:

      【解决方案2】:

      这个问题提供了一种在 Silverlight 中绑定到匿名类型的方法。

      根据 cmets,它也适用于 Silverlight 3。

      【讨论】:

        【解决方案3】:

        是的,现在是 2014 年,我仍然需要在 SilverNotThatlight 上工作,我一直在使用 ImpromptuInterface 解决问题

        using ImpromptuInterface;
        var value = Impromptu.InvokeGet(owner, propertyInfo.Name);
        Impromptu.InvokeSet(target, propertyInfo.Name, value);
        

        Impromptu 的作用远不止于此,我认为值得依赖它

        【讨论】:

          猜你喜欢
          • 2011-02-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多