我使用带有自动生成列的数据网格视图。我可以使用这样的东西来获取特定列的处理程序:
public int MyProperty { get; set;}
....
myDataGridView.Columns["MyProperty"];
这不是最佳的(这意味着如果我更改 MyProperty 的名称,我需要更改代码中的所有“MyProperty”字符串)。有没有办法克服这个问题?例如,我可以使用属性使列标识符独立于属性名称(不诉诸手动创建列)吗?
我使用带有自动生成列的数据网格视图。我可以使用这样的东西来获取特定列的处理程序:
public int MyProperty { get; set;}
....
myDataGridView.Columns["MyProperty"];
这不是最佳的(这意味着如果我更改 MyProperty 的名称,我需要更改代码中的所有“MyProperty”字符串)。有没有办法克服这个问题?例如,我可以使用属性使列标识符独立于属性名称(不诉诸手动创建列)吗?
一种简单的方法是使用可以评估属性并从本质上为您提供强大的打字能力的表达式,以便您重新考虑您的属性名称,它将传播。
可以在这里INotifyPropertyChanged
找到一个示例……因为在实现松散的打字表面时,这种表面也很常见。