All,
I realize that this is more of a request than a bug, but I consider anything using strings to do reflection as a bug. It is bad, bad, bad...especially when we have such things as Static Reflection available to us in 3.5 with Expression<T>. The reason is that you don't get any compile time checking. Instead, you don't find out that you mispelled something or a property has been deprecated until run time when you finally click on that page where the grid lives.
Anyways, I am wondering what the plan is to change your columns to use Static Reflection versus using strings as DataFields. The reason that I ask this, besides it really bugging me, is that I am working on an implementation of our own bound column that uses it. Since I can't override its functionality as easy as you, especially because of all the internal calls, I will request that you make your grid columns start using Static Reflection. In case you don't know what this is, instead of mapping an object to a string representation of the property, you can actually map it to a compiled version of it using lambda. Below is an example of what I would love to see. A Fluent Interface would be my next request.
I realize that this is more of a request than a bug, but I consider anything using strings to do reflection as a bug. It is bad, bad, bad...especially when we have such things as Static Reflection available to us in 3.5 with Expression<T>. The reason is that you don't get any compile time checking. Instead, you don't find out that you mispelled something or a property has been deprecated until run time when you finally click on that page where the grid lives.
Anyways, I am wondering what the plan is to change your columns to use Static Reflection versus using strings as DataFields. The reason that I ask this, besides it really bugging me, is that I am working on an implementation of our own bound column that uses it. Since I can't override its functionality as easy as you, especially because of all the internal calls, I will request that you make your grid columns start using Static Reflection. In case you don't know what this is, instead of mapping an object to a string representation of the property, you can actually map it to a compiled version of it using lambda. Below is an example of what I would love to see. A Fluent Interface would be my next request.
var amphireGridBoundColumn = new AmphireGridBoundColumn<Product>().MapDataField(x => x.CasePrice);
amphireGridBoundColumn.HeaderText =
"Case Price";
radGrid.MasterTableView.Columns.Add(amphireGridBoundColumn);
Thanks for taking the time to read this and I hope that you can implement it soon.
Mike