Class GridModelDataBinder
This is a helper class for the GridDataBoundGrid that manages access to the data source.
Inherited Members
Namespace: Syncfusion.Windows.Forms.Grid
Assembly: Syncfusion.Grid.Windows.dll
Syntax
public class GridModelDataBinder : NonFinalizeDisposable, IDisposable, IGridModelDataProvider, ICurrencyManagerSource
Remarks
GridDataBoundGrid implements the IGridModelDataProvider interface that lets it catch QueryRowCount, QueryColCount, QueryCellInfo, and SaveCellInfo events in one place.
The methods in this interface are called before the named events are raised and thus give you a chance to control the event's behavior before other subscribers can handle it.
You access the GridModelDataBinder instance with the DataProvider property of the GridModel.
Constructors
GridModelDataBinder(GridModel)
Initializes a new GridModelDataBinder and associates it with a GridModel.
Declaration
public GridModelDataBinder(GridModel model)
Parameters
Type | Name | Description |
---|---|---|
GridModel | model | The GridModelthis object should be associated with. |
Fields
childListHandler
Used internally.
Declaration
public GridModelDataBinder.GetChildListHandler childListHandler
Field Value
Type |
---|
GridModelDataBinder.GetChildListHandler |
Properties
AddNewForceItemChangedEventHack
Gets or sets a value indicating whether add new ForceItemChangedEvent hack. Used internally.
Declaration
public static bool AddNewForceItemChangedEventHack { get; set; }
Property Value
Type |
---|
System.Boolean |
AllowAddNew
Gets a value indicating whether a datasource supports adding new records.
Declaration
public bool AllowAddNew { get; }
Property Value
Type |
---|
System.Boolean |
AllowEdit
Gets a value indicating whether a datasource supports editing records.
Declaration
public bool AllowEdit { get; }
Property Value
Type |
---|
System.Boolean |
AllowRemove
Gets a value indicating whether the datasource allows removing records.
Declaration
public bool AllowRemove { get; }
Property Value
Type |
---|
System.Boolean |
AllowSetValueOnCurrentItem
Gets or sets a value indicating whether the datasource is a DataView and the user edits the contents of a cell in the current record, the value will also be set in the underlying record. If this is a problem for, e.g. if you want to be able to modify contents of the current record from outside after it was switched into edit mode, you can set this AllowSetValueOnCurrentItem to false.
Declaration
public bool AllowSetValueOnCurrentItem { get; set; }
Property Value
Type |
---|
System.Boolean |
AutoInitCellTypes
Gets or sets a value indicating whether the grid should set CellType automatically for columns that have dates or Boolean values.
Declaration
public static bool AutoInitCellTypes { get; set; }
Property Value
Type |
---|
System.Boolean |
BindingContext
Gets or sets the BindingContext for this object. You can assign a BindingContext from a parent form to this property.
Declaration
public BindingContext BindingContext { get; set; }
Property Value
Type |
---|
System.Windows.Forms.BindingContext |
BindToCurrencyManager
Gets or sets a value indicating whether list should be attached to System.Windows.Forms.CurrencyManager or if you would like the engine to be detached from a CurrencyManager. (Default is True)
Declaration
public bool BindToCurrencyManager { get; set; }
Property Value
Type |
---|
System.Boolean |
BoundColumnsCollectionType
Gets or sets if you want to use a class derived from GridBoundColumn, you should also derive a GridBoundColumnsCollection and set BoundColumnsCollectionType.
Declaration
public static Type BoundColumnsCollectionType { get; set; }
Property Value
Type |
---|
System.Type |
Examples
This sample demonstrates how to implement a derived CustomGridColumn:
///
public int Width
{
get { return width; }
set { width = value; }
}
public int WidthPercentage
{
get { return widthPercentage; }
set { widthPercentage = value; }
}
public CustomGridColumn(PropertyDescriptor prop)
: base(prop)
{
}
object ICloneable.Clone()
{
return base.Clone();
}
}
[ListBindableAttribute(false)]
[Editor(typeof(GridBoundColumnsCollectionEditor), typeof(System.Drawing.Design.UITypeEditor))]
public class CustomGridColumnsCollection : GridBoundColumnsCollection, ICloneable
{
public CustomGridColumnsCollection(GridModelDataBinder table)
: base(table)
{
}
public override GridBoundColumn CreateBoundColumn(PropertyDescriptor pd)
{
return new CustomGridColumn(pd);
}
///
///
///
///
///
///
base.GridBoundColumns = value;
}
}
///
base.GridBoundColumns = value;
}
}
}
public class SyncFusionBoundGrid : GridDataBoundGrid
{
///
CurrentPosition
Gets or sets the zero-based position of the current record in the datasource.
Declaration
public int CurrentPosition { get; set; }
Property Value
Type |
---|
System.Int32 |
CurrentRowIndex
Gets the row index in the grid for the CurrentPosition.
Declaration
public int CurrentRowIndex { get; }
Property Value
Type |
---|
System.Int32 |
DataMember
Gets or sets the specific list in a DataSource for which the GridDataBoundGrid control displays a gridModel.
Declaration
public string DataMember { get; set; }
Property Value
Type |
---|
System.String |
DataSource
Gets or sets the datasource that the gridModel is displaying data for.
Declaration
public object DataSource { get; set; }
Property Value
Type |
---|
System.Object |
DefaultCurrentRecordItemChangedBehavior
Gets or sets the default behavior when the grid is notified from the underlying IBindingList that the data for the current record are changed.
Declaration
public GridCurrentRecordItemChangedBehavior DefaultCurrentRecordItemChangedBehavior { get; set; }
Property Value
Type |
---|
GridCurrentRecordItemChangedBehavior |
DirectSaveCellInfo
Gets or sets a value indicating whether to save cell values directly into the datasource without moving the current record and without calling BeginEdit or EndEdit.
Declaration
public bool DirectSaveCellInfo { get; set; }
Property Value
Type |
---|
System.Boolean |
Remarks
The clipboard paste and clipboard deleted functions temporarily raise this flag when pasting several rows.
DoNotDisposeLists
Gets or sets a value indicating whether DoNotDisposeLists. Used internally.
Declaration
public static bool DoNotDisposeLists { get; set; }
Property Value
Type |
---|
System.Boolean |
EnableAddNew
Gets or sets a value indicating whether the grid supports editing records if the underlying datasource allows it. See AllowAddNew.
Declaration
public bool EnableAddNew { get; set; }
Property Value
Type |
---|
System.Boolean |
EnableEdit
Gets or sets a value indicating whether the grid supports editing records if the underlying datasource allows it. See AllowEdit.
Declaration
public bool EnableEdit { get; set; }
Property Value
Type |
---|
System.Boolean |
EnableRemove
Gets or sets a value indicating whether the grid supports removing records if the underlying datasource allows it. See AllowRemove.
Declaration
public bool EnableRemove { get; set; }
Property Value
Type |
---|
System.Boolean |
ErrorMessage
Gets the error message of the last error.
Declaration
public string ErrorMessage { get; }
Property Value
Type |
---|
System.String |
Exception
Gets the exception for the last save operation.
Declaration
public Exception Exception { get; }
Property Value
Type |
---|
System.Exception |
ForceUpdateAfterListChangedEvent
Gets or sets a value indicating whether ForceUpdateAfterListChangedEvent. Used internally.
Declaration
public bool ForceUpdateAfterListChangedEvent { get; set; }
Property Value
Type |
---|
System.Boolean |
GridBoundColumns
Gets or sets a collection of GridBoundColumn objects in the GridDataBoundGrid control.
Declaration
public GridBoundColumnsCollection GridBoundColumns { get; set; }
Property Value
Type |
---|
GridBoundColumnsCollection |
HasError
Gets a value indicating whether an error occurred in the last save operation.
Declaration
public bool HasError { get; }
Property Value
Type |
---|
System.Boolean |
HierarchyLevelCount
Gets the number of hierarchies displayed in this grid. A regular data source without nested relations will have a HierarchyLevelCount of 1.
Declaration
public int HierarchyLevelCount { get; }
Property Value
Type |
---|
System.Int32 |
InEndEdit
Gets a value indicating whether EndEdit() has been called.
Declaration
public bool InEndEdit { get; }
Property Value
Type |
---|
System.Boolean |
InRowChanged
Gets a value indicating whether in row changed. True while in OnRowChanged(EventArgs).
Declaration
public bool InRowChanged { get; }
Property Value
Type |
---|
System.Boolean |
IsAddNew
Gets a value indicating whether AddNew() has been called.
Declaration
public bool IsAddNew { get; }
Property Value
Type |
---|
System.Boolean |
IsAppendRow
Gets a value indicating whether the grid's current row is positioned at the append row (if any).
Declaration
public bool IsAppendRow { get; }
Property Value
Type |
---|
System.Boolean |
IsDesignMode
Gets or sets a value indicating whether is design mode. True if component is designed inside a designer; False otherwise.
Declaration
public bool IsDesignMode { get; set; }
Property Value
Type |
---|
System.Boolean |
IsDirty
Gets a value indicating whether there are pending changes to the current record.
Declaration
public bool IsDirty { get; }
Property Value
Type |
---|
System.Boolean |
IsEditing
Gets a value indicating whether BeginEdit() has been called.
Declaration
public bool IsEditing { get; }
Property Value
Type |
---|
System.Boolean |
IsSuspendBinding
Gets a value indicating whether SuspendBinding() was called.
Declaration
public bool IsSuspendBinding { get; }
Property Value
Type |
---|
System.Boolean |
Remarks
SuspendBinding() and ResumeBinding() are two methods that allow the temporary suspension and resumption of data binding. You would typically suspend data binding if you want to make several changes to the datasource without immediately updating the grid after each change.
For example, if you want to clear out all the records in your data set and refill it with its original data, you can improve performance of this operation substantially if the grid does not need to immediately reflect every row change while the data set is filled.
OptimizeListChangedEvent
Gets or sets a value indicating whether OptimizeListChangedEvent. Used internally.
Declaration
public bool OptimizeListChangedEvent { get; set; }
Property Value
Type |
---|
System.Boolean |
RecordCount
Gets the number of records in the datasource. If you are displaying a grid with nested relations, the only the record count for the root data source is displayed ignoring any expanded nodes.
Declaration
public int RecordCount { get; }
Property Value
Type |
---|
System.Int32 |
RelationCount
Gets the number of relations displayed in the grid.
Declaration
public int RelationCount { get; }
Property Value
Type |
---|
System.Int32 |
RootHierarchyLevel
Gets the GridHierarchyLevel with information about columns displayed for the root list.
Declaration
public GridHierarchyLevel RootHierarchyLevel { get; }
Property Value
Type |
---|
GridHierarchyLevel |
SavedPosition
Gets the last position before CurrentPosition was changed.
Declaration
public int SavedPosition { get; }
Property Value
Type |
---|
System.Int32 |
SavedRowIndex
Gets the row index in the grid for the SavedPosition.
Declaration
public int SavedRowIndex { get; }
Property Value
Type |
---|
System.Int32 |
Site
Gets or sets Property Site (ISite)
Declaration
public ISite Site { get; set; }
Property Value
Type |
---|
System.ComponentModel.ISite |
SupportsAddNew
Gets a value indicating whether to support add new. Use AllowAddNew instead.
Declaration
public bool SupportsAddNew { get; }
Property Value
Type |
---|
System.Boolean |
Methods
AddNew()
Adds a new record to the datasource.
Declaration
public virtual void AddNew()
AddRelation(String)
Adds a GridHierarchyLevel to the grid for a specified relation. If you are referring to a relation within a System.Data.DataSet, the name of the relation should be the same name you used when adding the relation to System.Data.DataSet.Relations of System.Data.DataSet.
Declaration
public GridHierarchyLevel AddRelation(string nestedDataMember)
Parameters
Type | Name | Description |
---|---|---|
System.String | nestedDataMember | The name of the relation. This can be the name of a System.Data.DataRelation or the name of a System.ComponentModel.PropertyDescriptor that references any System.Collections.IList. |
Returns
Type | Description |
---|---|
GridHierarchyLevel | The GridHierarchyLevel with information about columns displayed for the newly added relation. |
BeginEdit()
Begins an edit on the current record.
Declaration
public virtual void BeginEdit()
CancelEdit()
Cancels the current edit operation.
Declaration
public virtual void CancelEdit()
ColIndexToField(Int32)
Converts a column index in a grid to a zero-based field number adjusted for column headers. The resulting field number can be used as an index to look up a GridBoundColumn in the Syncfusion.Windows.Forms.Grid.GridModelDataBinder.InternalColumns collection.
Declaration
public int ColIndexToField(int colIndex)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | colIndex | The column index in the grid. |
Returns
Type | Description |
---|---|
System.Int32 | A zero-based field number in the datasource. |
CreateBoundColumnsCollection()
Instantiates a GridBoundColumnsCollection that holds the collection of GridBoundColumn objects. If you want to use a class derived from the GridBoundColumn you should also derive a GridBoundColumnsCollection and set BoundColumnsCollectionType. See BoundColumnsCollectionType for a sample.
Declaration
public virtual GridBoundColumnsCollection CreateBoundColumnsCollection()
Returns
Type | Description |
---|---|
GridBoundColumnsCollection | An empty GridBoundColumnsCollection. |
Dispose(Boolean)
Releases all resources used by the System.ComponentModel.Component.
Declaration
protected override void Dispose(bool disposing)
Parameters
Type | Name | Description |
---|---|---|
System.Boolean | disposing | true to release both managed and unmanaged resources; false to release only unmanaged resources. |
Overrides
Remarks
See the documentation for the System.ComponentModel.Component class and its Dispose member.
EndEdit()
Pushes changes since a BeginEdit() call for the current record.
Declaration
public virtual void EndEdit()
FieldToColIndex(Int32)
Converts a zero-based field number to a column index in a grid adjusted for column headers.
Declaration
public int FieldToColIndex(int fieldNum)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fieldNum | A zero-based field number in the datasource. |
Returns
Type | Description |
---|---|
System.Int32 | The column index in the grid. |
GetHierarchyLevel(Int32)
Returns the GridHierarchyLevel with information about columns displayed for the specified relation.
Declaration
public GridHierarchyLevel GetHierarchyLevel(int index)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index | The zero-based hierarchy level for this relation. |
Returns
Type | Description |
---|---|
GridHierarchyLevel | The GridHierarchyLevel with information about columns displayed for the specified relation. |
GetHierarchyLevel(String)
Returns the GridHierarchyLevel with information about columns displayed for the specified relation.
Declaration
public GridHierarchyLevel GetHierarchyLevel(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the relation. This should be the same name you used for adding the relation with AddRelation(String). |
Returns
Type | Description |
---|---|
GridHierarchyLevel | The GridHierarchyLevel with information about columns displayed for the specified relation. |
GetRecordStateAtRowIndex(Int32)
Returns the GridBoundRecordState for the specified absolute row index with information about the hierarchy level and the record displayed at the specified row.
Declaration
public GridBoundRecordState GetRecordStateAtRowIndex(int rowIndex)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | rowIndex | The absolute row index in the grid. |
Returns
Type | Description |
---|---|
GridBoundRecordState | A GridBoundRecordState with information about the hierarchy level and the record displayed at the specified row. |
InitializeColumns()
Recreates the internal columns collection or loops through the existing GridBoundColumns collection and reinitializes columns with the correct PropertyDescriptor based on the MappingName.
Declaration
public void InitializeColumns()
Remarks
This method is automatically called when a DataSource is assigned to the grid.
IsAnyDirtyField()
Checks if any field in the current record is modified.
Declaration
public bool IsAnyDirtyField()
Returns
Type | Description |
---|---|
System.Boolean | true if there are pending changes; false if current record is not modified. |
IsFieldDirty(Int32)
Checks if a field is modified in the current record.
Declaration
public bool IsFieldDirty(int fieldNum)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fieldNum | The zero-based field index. |
Returns
Type | Description |
---|---|
System.Boolean | True if field is changed; False otherwise. |
LayoutColumns(String[])
Rearranges how columns are displayed in the grid and allows you to specify covered cells and / or break records into several rows displayed in the grid.
Declaration
public void LayoutColumns(params string[] mappingNames)
Parameters
Type | Name | Description |
---|---|---|
System.String[] | mappingNames | A string array with field names. The following strings have a specific meaning: "-" specifies a covered cell. "." indicates line break inside the record. Subsequent fields will be displayed in another row. "" specifies an empty "whitespace" column. Other that these, you should use the same mapping names that you also use with GridBoundColumn objects. |
Examples
See the "MultiRowRecord" and "ExpandGrid" examples for sample code.
ListManagerPositionToRowIndex(Int32)
Converts a zero-based position of the data source displayed in the grid to an absolute row index in the grid.
Declaration
public int ListManagerPositionToRowIndex(int record)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | record | A zero-based record in the data source displayed in the grid. |
Returns
Type | Description |
---|---|
System.Int32 | The row index in the grid. |
Remarks
The returned value depends on the number of rows per record and the current expansion state of hierarchy levels in the grid.
Only the list manager position for the outer hierarchy is accepted as input.
NameToColIndex(String)
Returns the column index for a column that matches a given name. Returns the zero-based field number for a column that matches a given name. The resulting field number can be used as an index for Item[Int32, Int32].
Declaration
public int NameToColIndex(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the field to be matched. |
Returns
Type | Description |
---|---|
System.Int32 | The column index in the grid; -1 if not found. |
Remarks
This function only searches the columns in the root level. If you have several relations displayed in the grid, the nested relations will not be searched by this function.
NameToField(String)
Returns the zero-based field number for a column that matches a given name. The resulting field number can be used as an index to look up a GridBoundColumn in the Syncfusion.Windows.Forms.Grid.GridModelDataBinder.InternalColumns collection.
Declaration
public int NameToField(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the field to be matched. |
Returns
Type | Description |
---|---|
System.Int32 | A zero-based field number in the datasource; -1 if not found. |
Remarks
This function only searches the columns in the root level. If you have several relations displayed in the grid, the nested relations will not be searched by this function.
NameToRowIndex(String)
Returns the row index for a row that matches a given name.
Declaration
public int NameToRowIndex(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the row to be matched. |
Returns
Type | Description |
---|---|
System.Int32 | The row index in the grid; -1 if not found. |
OnBindingContextChanged(EventArgs)
This is called when the BindingContext property is changed.
Declaration
protected virtual void OnBindingContextChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | The System.EventArgsthat contains event data. |
OnBindingListChanged(ListChangedEventArgs)
Raises the BindingListChanged event.
Declaration
protected virtual void OnBindingListChanged(ListChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.ComponentModel.ListChangedEventArgs | e | A System.ComponentModel.ListChangedEventArgs that contains the event data. |
OnCurrentCellListItemChanged(GridCurrentCellListItemChangedEventArgs)
Occurs when the grid is notified from the underlying IBindingList and lets you dynamically define the behavior how to resolve conflict with pending changes in current record.
Declaration
protected virtual void OnCurrentCellListItemChanged(GridCurrentCellListItemChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridCurrentCellListItemChangedEventArgs | e |
OnCurrentPositionChanged(EventArgs)
Raises the CurrentPositionChanged event.
Declaration
protected virtual void OnCurrentPositionChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | An Systems.Windows.EventArgs that contains the event data. |
OnDataSourceChanged(EventArgs)
Raises the DataSourceChanged event.
Declaration
protected virtual void OnDataSourceChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | An Systems:EventArgs that contains the event data. |
OnEditModeChanged(EventArgs)
Raises the EditModeChanged event.
Declaration
protected virtual void OnEditModeChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | A Systems.Windows.EventArgs that contains the event data. |
OnGridBoundColumnsChanged(EventArgs)
Raises the GridBoundColumnsChanged event.
Declaration
protected virtual void OnGridBoundColumnsChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | An System.Windows.EventArgs that contains the event data. |
OnItemChanged(ItemChangedEventArgs)
Raises the ItemChanged event.
Declaration
protected virtual void OnItemChanged(ItemChangedEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Windows.Forms.ItemChangedEventArgs | e | An System.Windows.Forms.ItemChangedEventArgs that contains the event data. |
OnRecordsRemoved(EventArgs)
Raises the RecordsRemoved event.
Declaration
protected virtual void OnRecordsRemoved(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | An Systems:EventArgs that contains the event data. |
OnRowChanged(EventArgs)
Raises the RowChanged event.
Declaration
protected virtual void OnRowChanged(EventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.EventArgs | e | The System.EventArgsthat contains event data. |
PositionToRowIndex(Int32)
Converts a zero-based position in the grid to an absolute row index in the grid.
Declaration
public int PositionToRowIndex(int gridPosition)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | gridPosition | A zero-based position in the grid. The first position is the 0-based index starting with the first non-header row in the grid. |
Returns
Type | Description |
---|---|
System.Int32 | The row index in the grid. |
Remarks
If you have a grid with 3 row headers:
PositionToRowIndex(-1) will throw exception.
PositionToRowIndex(0) will return 3.
PositionToRowIndex(1) will return 4.
QueryCellInfo(GridQueryCellInfoEventArgs)
Method handler for the QueryCellInfo event.
Declaration
protected virtual void QueryCellInfo(GridQueryCellInfoEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridQueryCellInfoEventArgs | e | An GridQueryCellInfoEventArgs that contains the event data. |
QueryColCount(GridRowColCountEventArgs)
Method handler for the QueryColCount event.
Declaration
protected virtual void QueryColCount(GridRowColCountEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridRowColCountEventArgs | e | An GridRowColCountEventArgs that contains the event data. |
QueryRowCount(GridRowColCountEventArgs)
Method handler for the QueryRowCount event.
Declaration
protected virtual void QueryRowCount(GridRowColCountEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridRowColCountEventArgs | e | An GridRowColCountEventArgs that contains the event data. |
RaiseCurrentPositionChanged()
Raises a CurrentPositionChanged event.
Declaration
public void RaiseCurrentPositionChanged()
RecordEqualsAtRowIndex(Int32, Int32)
Checks if both rows represent the same record of the underlying data source.
Declaration
public bool RecordEqualsAtRowIndex(int rowIndex1, int rowIndex2)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | rowIndex1 | The first row index. |
System.Int32 | rowIndex2 | The second row index. |
Returns
Type | Description |
---|---|
System.Boolean | True if both rows show the same record of the underlying data source. |
Remarks
Normally different rows will represent different records in the data source. However, you can break one record into several rows with LayoutColumns(String[]). In that case, several rows can represent the same record in the datasource.
RemoveRecords(Int32, Int32)
Removes the specified records from the datasource (without sending a RowsDeleting event; use DeleteRecordsAtRowIndex(Int32, Int32) instead if you need it.
Declaration
public virtual void RemoveRecords(int first, int last)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | first | The zero-based position of the first record. |
System.Int32 | last | The zero-based position of the last record. |
ResetError()
Resets error information for the current record.
Declaration
public void ResetError()
ResetField(Int32)
Resets a field back to its original value in the current record.
Declaration
public void ResetField(int fieldNum)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fieldNum | The zero-based field index. |
ResetHierarchyLevels()
Call this if you have changed the underlying datasource and added several relations.
Declaration
public void ResetHierarchyLevels()
ResumeBinding()
Resumes data binding after a previous SuspendBinding() call.
Declaration
public void ResumeBinding()
Remarks
SuspendBinding() and ResumeBinding() are two methods that allow the temporary suspension and resumption of data binding. You would typically suspend data binding if you want to make several changes to the data source without immediately updating the grid after each change.
For example, if you want to clear out all records in your data set and refill it with its original data, you can improve performance of this operation substantially if the grid does not need to immediately reflect every row change while the data set is filled.
RowIndexToListManagerPosition(Int32)
Converts an absolute row index in a grid to a zero-based record index of the datasource displayed in the grid.
Declaration
public int RowIndexToListManagerPosition(int rowIndex)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | rowIndex | The absolute row index in the grid. |
Returns
Type | Description |
---|---|
System.Int32 | Zero-based record index of the data source displayed in the grid. |
Remarks
The returned value depends on the number of rows per record and the current expansion state of hierarchy levels in the grid.
Only the list manager position for the outer hierarchy is returned.
RowIndexToPosition(Int32)
Converts an absolute row index in a grid to a zero-based position in the same grid adjusted for row headers. The first grid position is the 0-based index starting with the first non-header row in the grid.
Declaration
public int RowIndexToPosition(int rowIndex)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | rowIndex | The absolute row index in the grid. |
Returns
Type | Description |
---|---|
System.Int32 | The zero-based position in the grid adjusted for row headers. |
Remarks
If you have a grid with 3 row headers:
RowIndexToPosition(4) will return 1.
RowIndexToPosition(3) will return 0.
RowIndexToPosition(2) will return -1.
RowIndexToPosition(1) will return -1.
The row index and the grid position do not depend on RelationCount and number of rows per record.
SaveCellInfo(GridSaveCellInfoEventArgs)
Method handler for the SaveCellInfo event.
Declaration
protected virtual void SaveCellInfo(GridSaveCellInfoEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridSaveCellInfoEventArgs | e | An GridSaveCellInfoEventArgs that contains the event data. |
SetCurrentPosition(Int32, Boolean)
Changes the current record in the datasource.
Declaration
public void SetCurrentPosition(int value, bool raiseCurrentPositionChanged)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | value | The zero-based position in the datasource for the new current record. |
System.Boolean | raiseCurrentPositionChanged | specifies if a CurrentPositionChanged event should be raised. |
SetDataBinding(Object, String)
Sets the DataSource and DataMember properties at run-time.
Declaration
public void SetDataBinding(object dataSource, string dataMember)
Parameters
Type | Name | Description |
---|---|---|
System.Object | dataSource | The datasource, typed as System.Object, for the GridDataBoundGrid control. |
System.String | dataMember | The DataMember string that specifies the table to bind to within the object returned by the DataSource property. |
Sort(Int32)
Sorts the datasource by the specified field.
Declaration
public virtual void Sort(int fieldNum)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | fieldNum | This number specifies the field to use as key for a sort. |
Remarks
When the datasource is sorted by the specified field, the sort direction is toggled between ascending and descending.
Sorting is supported only for columns displayed in the root level for grid with nested relations displayed in the grid.
SuspendBinding()
Suspends data binding until ResumeBinding() is called.
Declaration
public void SuspendBinding()
Remarks
SuspendBinding() and ResumeBinding() are two methods that allow the temporary suspension and resumption of data binding. You would typically suspend data binding if you want to make several changes to the data source without immediately updating the grid after each change.
For example, if you want to clear out all records in your data set and refill it with its original data, you can improve performance of this operation substantially if the grid does not need to immediately reflect every row change while the data set is filled.
Events
BindingListChanged
Occurs before the GridModelDataBinder processes the System.ComponentModel.IBindingList.ListChanged event of an attached source list.
Declaration
public event ListChangedEventHandler BindingListChanged
Event Type
Type |
---|
System.ComponentModel.ListChangedEventHandler |
Remarks
The reason for firing this event is to give a programmer chance to react to a System.ComponentModel.IBindingList.ListChanged event before the binder since there is otherwise no order guaranteed when an IBindingList raises a ListChanged event.
CurrentCellListItemChanged
Occurs when the grid is notified from the underlying IBindingList and lets you dynamically define the behavior how to resolve conflict with pending changes in current record.
Declaration
public event GridCurrentCellListItemChangedEventHandler CurrentCellListItemChanged
Event Type
Type |
---|
GridCurrentCellListItemChangedEventHandler |
CurrentPositionChanged
Occurs when the current record position in the datasource is changed.
Declaration
public event EventHandler CurrentPositionChanged
Event Type
Type |
---|
System.EventHandler |
DataSourceChanged
Occurs when the DataSource property has changed.
Declaration
public event EventHandler DataSourceChanged
Event Type
Type |
---|
System.EventHandler |
EditModeChanged
Occurs when BeginEdit(), EndEdit(), CancelEdit(), or AddNew() is called.
Declaration
public event EventHandler EditModeChanged
Event Type
Type |
---|
System.EventHandler |
GridBoundColumnsChanged
Occurs when columns have been added or removed.
Declaration
public event EventHandler GridBoundColumnsChanged
Event Type
Type |
---|
System.EventHandler |
ItemChanged
Occurs when contents of a record have changed.
Declaration
public event ItemChangedEventHandler ItemChanged
Event Type
Type |
---|
System.Windows.Forms.ItemChangedEventHandler |
RecordsRemoved
Occurs after records are removed.
Declaration
public event EventHandler RecordsRemoved
Event Type
Type |
---|
System.EventHandler |
RowChanged
Occurs when contents of a record have changed.
Declaration
public event EventHandler RowChanged
Event Type
Type |
---|
System.EventHandler |
Explicit Interface Implementations
IGridModelDataProvider.QueryCellInfo(GridQueryCellInfoEventArgs)
Method handler for the QueryCellInfo event.
Declaration
void IGridModelDataProvider.QueryCellInfo(GridQueryCellInfoEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridQueryCellInfoEventArgs | e | The GridQueryCellInfoEventArgsthat contains event data. |
IGridModelDataProvider.QueryColCount(GridRowColCountEventArgs)
Method handler for the QueryColCount event
Declaration
void IGridModelDataProvider.QueryColCount(GridRowColCountEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridRowColCountEventArgs | e | The GridRowColCountEventArgsthat contains event data. |
IGridModelDataProvider.QueryRowCount(GridRowColCountEventArgs)
Method handler for the QueryColCount event
Declaration
void IGridModelDataProvider.QueryRowCount(GridRowColCountEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridRowColCountEventArgs | e | The GridRowColCountEventArgsthat contains event data. |
IGridModelDataProvider.SaveCellInfo(GridSaveCellInfoEventArgs)
Method handler for the SaveCellInfo event.
Declaration
void IGridModelDataProvider.SaveCellInfo(GridSaveCellInfoEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
GridSaveCellInfoEventArgs | e | An GridSaveCellInfoEventArgs that contains the event data. |
ICurrencyManagerSource.GetCurrencyManager()
Returns a System.Windows.Forms.CurrencyManager that is associated with the current object.
Declaration
CurrencyManager ICurrencyManagerSource.GetCurrencyManager()
Returns
Type |
---|
System.Windows.Forms.CurrencyManager |