Bindings中的属性名称不区分大小写?

时间:2014-10-14 09:54:40

标签: c# .net winforms data-binding

我正在调试一段代码,令我惊讶的是以下几行都是正确的。

Binding binding = new Binding("Text", myObject, "PropertyName");

Binding binding = new Binding("Text", myObject, "propertyname");

似乎属性名称不区分大小写,但我找不到任何相关内容。

任何人都可以告诉我,如果我错过了什么,或者背后的理性是什么?

1 个答案:

答案 0 :(得分:5)

我不知道它在哪里被记录,但确实在the source

它使用StringComparison.OrdinalIgnoreCase将绑定中的属性名称与实际对象的属性进行比较:

if( tempPropInfo==null
    &&
    String.Equals (propInfos[i].Name, propertyName, StringComparison.OrdinalIgnoreCase)
  )
  {
  }