Gets a value of a data object property
Namespace: Dapfor.Wpf.DataAssembly: Dapfor.Wpf (in Dapfor.Wpf.dll) Version: 4.1.0.26317 (4.1.0.26317)
Syntax
C# |
---|
public interface IGetter |
Visual Basic |
---|
Public Interface IGetter |
Visual C++ |
---|
public interface class IGetter |
F# |
---|
type IGetter = interface end |
Remarks
In some cases getting values of data objects through the IDataField interface may be a costly operation because it occurs through the reflection.
To accelerate the values getting, the data objects may implement IGetAccelerator interface. In this case the values are returned through the delegating mechanism
and not through the reflection.
Copy | |
---|---|
public class TestClass : IGetAccelerator { private int intValue; private double doubleValue; //Some property that returns int value public int IntValue { get { return intValue; } set { intValue = value; } } public double DoubleValue { get { return doubleValue; } set { doubleValue = value; } } //IGetAccelerator implementation. public IGetter GetGetter(IDataField field) { switch (field.Id) { //This implementation returns a delegate that calls IntValue property case "IntValue": return new Getter<int>(delegate { return IntValue; }); //This implementation creates a new object of the ValueGetter type which keeps a value, returned by the DoubleValue property call case "DoubleValue": return new ValueGetter(DoubleValue); } return null; } } //Demonstrates how the data object can be added to the grid public void HowToUseExample(GridControl grid) { grid.Rows.Add(new TestClass()); } |